Part Number Hot Search : 
IDT72831 IDT72831 LD121E RG4BC LD121E 15023I AN7173K BC846A
Product Description
Full Text Search
 

To Download AD1845JP Datasheet File

  If you can't view the Datasheet, Please click here to try to view without PDF Reader .  
 
 


  Datasheet File OCR Text:
  a parallel-port 16-bit soundport ? stereo codec ad1845 features single-chip integrated ?d digital audio stereo codec microsoft ? and windows ? sound system compatible mpc level-2+ compliant mixing 16 ma bus drive capability supports two dma channels for full duplex operation on-chip capture and playback fifos advanced power-down modes programmable gain and attenuation sample rates from 4.0 khz to 50 khz derived from a single clock or crystal input 68-lead plcc, 100-lead tqfp packages operation from +5 v supplies byte-wide parallel interface to isa and eisa buses pin compatible with ad1848, ad1846, cs4248, cs4231 rev. c information furnished by analog devices is believed to be accurate and reliable. however, no responsibility is assumed by analog devices for its use, nor for any infringements of patents or other rights of third parties which may result from its use. no license is granted by implication or otherwise under any patent or patent rights of analog devices. product overview the parallel port ad1845 soundport stereo codec integrates key audio data conversion and control functions into a single integrated circuit. the ad1845 provides a complete, single chip computer audio solution for business audio and multimedia applications. the codec includes stereo audio converters, com- one technology way, p.o. box 9106, norwood, ma 02062-9106, u.s.a tel: 781/329-4700 world wide web site: http://www.analog.com fax: 781/326-8703 ? analog devices, inc., 1997 (continued on page 9) soundport is a registered trademark of analog devices, inc. microsoft and windows are registered trademarks of microsoft corporation. plete on-chip filtering, mpc level-2 compliant analog mixing, programmable gain, attenuation and mute, a variable sample frequency generator, fifos, and supports advanced power- down modes. it provides a direct, byte-wide interface to both isa (at) and eisa computer buses for simplified implemen- tation on a computer motherboard or add-in card. the ad1845 soundport stereo codec supports a dma re- quest/grant architecture for transferring data with the host com- puter bus. one or two dma channels can be supported. programmed i/o (pio) mode is also supported for control register accesses and for applications lacking dma control. two input control lines support mixed direct and indirect ad- dressing of thirty-seven internal control registers over this asyn- chronous interface. the ad1845 includes dual dma count registers for full duplex operation enabling the ad1845 to cap- ture data on one dma channel and play back data on a separate channel. the fifos on the ad1845 reduce the risk of losing data when making dma transfers over the isa/eisa bus. the fifos buffer data transfers and allow for relaxed timing in acknowledging requests for capture and playback data. functional block diagram gam = gain attentuate mute digital mix attenuate variable sample frequency generator mute m_in l_aux2 r_aux2 l_mic r_mic analog supply 0 db/ 20 db gam s sd a/d converter gain control registers host dma interrupt reference l_out m_out r_out l_line r_line l_aux1 r_aux1 ad1845 digital supply clock source power down reset digital analog bus driver control gain l r l r external control v ref v ref_f gam gam gam gam sd a/d converter attenuate mute sd d/a converter attenuate mute sd d/a converter m -law a-law linear fifo m -law a-law linear cs rd wr playback ack capture ack playback req capture req adr1:0 data7:0 fifo p a r a l l e l p o r t s s s s s s s s m u x
ad1845Cspecifications standard test conditions unless otherwise noted temperature 25 c digital supply (v dd ) 5.0 v analog supply (v cc ) 5.0 v word rate (f s ) 48 khz input signal 1008 hz analog output passband 20 hz to 20 khz adc fft size 2048 dac fft size 8192 v ih 5v v il 0v analog input min typ max units input voltage (rms values assume sine wave input) line 1 v rms 2.55 2.83 3.35 v p-p mic with +20 db gain (mge = 1) 0.1 v rms 0.255 0.283 0.335 v p-p mic with 0 db gain (mge = 0) 1 v rms 2.55 2.83 3.35 v p-p input impedance* 10 17 k w input capacitance 15 pf programmable gain amplifierCadc min typ max units step size (all steps tested) (0 db to 22.5 db) 0.7 1.5 1.9 db pga gain range span 21.5 22.5 23.5 db auxiliary line, mono, and microphone input analog gain/amplifiers/attenuators min typ max units step size : aux1, aux2, line, mic (all steps tested) (+12 db to C30 db) 1.25 1.5 1.75 db (C31.5 db to C34.5 db) 1 1.5 2.0 db step size: m_in (all steps tested) (0 db to C39 db) 2.5 3.0 3.6 db (C42 db to C45 db) 2.2 3.0 3.85 db input gain/attenuation range: aux1, aux2, line, mic 45.0 46.5 49.0 db input gain/attenuation range: m_in 42 45 49 db digital decimation and interpolation filters* min max units passband 0 0.4 f s hz passband ripple 0.1 db transition band 0.4 f s 0.6 f s hz stopband 0.6 f s hz stopband rejection 74 db group delay 15/f s group delay variation over passband 0.0 m s *guaranteed, not tested. dac test conditions calibrated 0 db relative to full scale 16-bit linear mode 10 k w output load mute off, ol = 0 adc test conditions calibrated 0 db gain C1.0 db relative to full scale line input 16-bit linear mode rev. c C2C
analog-to-digital converters min typ max units resolution 16 bits dynamic range (C60 db input, thd+n referenced to full scale, a-weighted) 73 81 db thd+n (referenced to full scale) 0.025 % C76 C72 db signal-to-intermodulation distortion 85 db adc crosstalk* line inputs (input l, ground r, read r; input r, ground l, read l) C90 C80 db line to mic (input line, ground and select mic, read adc) C90 C80 db line to aux1 C90 C80 db line to aux2 C90 C80 db gain error (full-scale span relative to nominal input voltage) C18.5 +10 % interchannel gain mismatch (difference of gain errors) 0.9 db adc offset error 10 mv digital-to-analog converters min typ max units resolution 16 bits dynamic range (C60 db input, thd+n referenced to full scale, a-weighted) 74 82 db thd+n (referenced to full scale) 0.032 % C78 C70 db signal-to-intermodulation distortion 90 db gain error (full-scale span relative to nominal output voltage) C14.5 +10 % interchannel gain mismatch (difference of gain errors) 0.6 db dac crosstalk* (input l, zero r, measure r_out; input r, zero l, measure l_out) C80 db total out-of-band energy (measured from 0.6 f s to 100 khz)* C50 db audible out-of-band energy (measured from 0.6 f s to 20 khz)* C70 db dac attenuator min typ max units step size (0 db to C22.5 db) 1.3 1.5 1.7 db step size (C22.5 db to C94.5 db)* 1.0 1.5 2.0 db output attenuation range span* 93.5 94.5 95.5 db analog output min typ max units full-scale output voltage ol = 0 1.7 2.0 2.2 v p-p ol = 1 2.4 2.83 3.11 v p-p output impedance* 600 w external load impedance 10 k w output capacitance* 15 pf external load capacitance 100 pf v ref 2.05 2.25 2.60 v v ref current drive 100 m a v ref output impedance 4k w mute attenuation of 0 db fundamental* (l_out, r_out, m_out) C80 db mute click (muted output minus unmuted midscale dac output)* 5mv *guaranteed, not tested. ad1845 C3C rev. c
ad1845 C4C rev. c system specifications min typ max units system frequency response ripple (line in to line out)* 1.0 db differential nonlinearity* 1 lsb phase linearity deviation* 5 degrees static digital specifications min max units high level input voltage (v ih ) digital inputs 2.4 v xtal1i 2.4 v low level input voltage (v il ) 0.8 v high level output voltage (v oh ) i oh = C2 ma 2.4 v low level output voltage (v ol ) i ol = 2 ma 0.4 v input leakage current C10 10 m a output leakage current C10 10 m a timing parameters (guaranteed over operating temperature range, v dd = v cc = 5.0 v) min max units wr / rd strobe width (t stw ) 100 ns wr / rd rising to wr / rd falling (t bwnd )80ns write data setup to wr rising (t wdsu )10ns rd falling to valid read data (t rddv )40ns cs setup to wr / rd falling (t cssu )10ns cs hold from wr / rd rising (t cshd )0ns adr setup to wr / rd falling (t adsu )10ns adr hold from wr / rd rising (t adhd )10ns dak rising to wr / rd falling (t sudk1 )20ns dak falling to wr / rd rising (t sudk2 )0ns dak setup to wr / rd falling (t dksu )10ns data hold from rd rising (t dhd1 )20ns data hold from wr rising (t dhd2 )15ns drq hold from wr / rd falling (t drhd )25ns dak hold from wr rising (t dkhda )10ns dak hold from rd rising (t dkhdb ) 10 ns dben / dbdir delay from wr / rd falling (t dbdl ) 30 ns pwrdwn and reset low pulsewidth 300 ns *guaranteed, not tested.
power supply min typ max units power supply rangeCdigital and analog 4.75 5.25 v power supply current 130 ma analog supply current 45 ma digital supply current 85 ma power dissipation (current nominal supplies) 650 mw power-down supply current 2ma reset supply current 2ma total power-down supply current 30 ma standby supply current 36 ma mixer power-down supply current 70 ma mixer only supply current 52 ma adc power-down supply current 80 ma dac power-down supply current 85 ma power supply rejection (100 mv p-p signal @ 1 khz)* (at both analog and digital supply pins, both adcs and dacs) 40 db clock specifications* min max units input clock frequency 33 mhz recommended clock duty cycle 10 90 % power up initialization time 512 ms *guaranteed, not tested. specifications subject to change without notice. ad1845 rev. c C5C ordering guide temperature package package model range description option 1 AD1845JP 0 c to +70 c 68-lead plcc p-68a AD1845JP-reel 2 0 c to +70 c 68-lead plcc p-68a ad1845jst 0 c to +70 c 100-lead tqfp st-100 notes 1 p = plastic leaded chip carrier; st = thin quad flatpack. 2 13" reel, multiples of 250 pcs. environmental conditions ambient temperature rating: t amb = t case C (pd q ca ) t case = case temperature in c pd = power dissipation in w q ca = thermal resistance (case-to-ambient) q ja = thermal resistance (junction-to-ambient) q jc = thermal resistance (junction-to-case) package u ja u jc u ca plcc 38 c/w 8 c/w 30 c/w tqfp 44 c/w 8 c/w 93 c/w absolute maximum ratings* min max units power supplies digital (v dd ) C0.3 6.0 v analog (v cc ) C0.3 6.0 v input current (except supply pins) 10.0 ma analog input voltage (signal pins) C0.3 v cc +0.3 v digital input voltage (signal pins) C0.3 v dd +0.3 v ambient temperature (operating) 0 +70 c storage temperature C65 +150 c *stresses greater than those listed under absolute maximum ratings may cause permanent damage to the device. this is a stress rating only; functional operation of the device at these or any other conditions above those indicated in the operational section of this specification is not implied. exposure to absolute maximum rating conditions for extended periods may affect device reliability. caution esd (electrostatic discharge) sensitive device. electrostatic charges as high as 4000 v readily accumulate on the human body and test equipment and can discharge without detection. although the ad1845 features proprietary esd protection circuitry, permanent damage may occur on devices subjected to high energy electrostatic discharges. therefore, proper esd precautions are recommended to avoid performance degradation or loss of functionality. warning! esd sensitive device
ad1845 C6C rev. c pin designations 100 99 98 97 96 95 94 93 92 91 90 89 88 87 86 85 84 83 82 81 80 79 78 77 76 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 75 74 73 72 71 70 69 68 67 66 65 64 63 62 61 60 59 58 57 56 55 54 53 52 51 rd cs xctl1 int xctl0 nc nc v dd gndd nc nc nc nc nc nc nc nc nc m_out m_in v dd gndd nc nc nc 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 ad1845 top view (not to scale) nc = no connect adr0 nc nc nc nc cdak cdrq pdak pdrq v dd gndd xtal1i xtal1o v dd gndd xtal2i xtal2o pwrdwn reset gndd nc nc nc nc r_filt adr1 gndd v dd nc nc nc nc data0 data1 data2 data3 gndd v dd data4 data5 data6 data7 nc nc nc nc gndd dben dbdir wr nc nc r_line r_mic l_mic l_line nc l_filt nc v ref nc nc v ref_f nc gnda v cc v cc gnda l_aux2 l_aux1 l_out r_out r_aux1 r_aux2 nc 60 59 58 57 56 55 54 53 52 51 50 49 48 47 46 45 44 rd cs xctl1 int xctl0 nc v dd gndd nc nc nc nc nc m_out m_in v dd gndd 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 ad1845 9 8 7 6 5 4 3 2 1 68 67 66 65 64 63 62 61 top view (not to scale) nc = no connect 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 adr0 cdak cdrq pdak pdrq v dd gndd xtal1i xtal1o v dd gndd xtal2i xtal2o pwrdwn reset gndd r_filt adr1 gndd v dd data0 data1 data2 data3 gndd v dd data4 data5 data6 data7 gndd dben dbdir wr r_line r_mic l_mic l_line l_filt v ref v ref_f gnda v cc v cc gnda l_aux2 l_aux1 l_out r_out r_aux1 r_aux2 100-lead tqfp 68-lead plcc
ad1845 C7C rev. c pin function descriptions parallel interface pin name plcc tqfp i/o description cdrq 12 7 o capture data request. the assertion of this signal hi indicates that the codec has a cap- tured audio sample from the adc ready for transfer. this signal will remain asserted until the internal capture fifo is empty. cdak 11 6 i capture data acknowledge. the assertion of this active lo signal indicates that the rd cycle occurring is a dma read from the capture buffer. pdrq 14 9 o playback data request. the assertion of this signal hi indicates that the codec is ready for more dac playback data. the signal will remain asserted until the internal playback fifo is full. pdak 13 8 i playback data acknowledge. the assertion of this active lo signal indicates that the wr cycle occurring is a dma write to the playback buffer. adr1:0 9 & 10 100 & 1 i codec addresses. these address pins are asserted by the codec interface logic during a control register/pio access. the state of these address lines determine which direct register is accessed. rd 60 75 i read command strobe. this active lo signal defines a read cycle from the codec. the cycle may be a read from the control/pio registers, or the cycles could be a read from the codecs dma sample registers. wr 61 76 i write command strobe. this active lo signal indicates a write cycle to the codec. the cycle may be a write to the control/pio registers, or the cycle could be a write to the codecs dma sample registers. cs 59 74 i ad1845 chip select. the codec will not respond to any control/pio cycle accesses unless this active lo signal is lo. this signal is ignored during dma transfers. data7:0 3C6 & 84C87 & i/o data bus. these pins transfer data and control information between the codec and 65C68 90C93 the host. dben 63 78 o data bus enable. this pin enables the external bus drivers. this signal is normally hi. for control register/pio cycles, dben = ( wr or rd ) and cs for dma cycles, dben = ( wr or rd ) and ( pdak or cdak ). dbdir 62 77 o data bus direction. this pin controls the direction of the data bus transceiver. hi enables writes from the host bus to the ad1845; lo enables reads from the ad1845 to the host bus. this signal is normally hi. for control register/pio cycles, dbdir = rd and cs for dma cycles, dbdir = rd and ( pdak or cdak ).
ad1845 C8C rev. c analog signals pin name plcc tqfp i/o description l_line 30 31 i left line input. r_line 27 28 i right line input. l_mic 29 30 i left microphone input. this signal can be either line level or C20 db from line level (using the on-chip 20 db gain block). r_mic 28 29 i right microphone input. this signal can be either line level or C20 db from line level (using the on-chip 20 db gain block). l_aux1 39 45 i left auxiliary #1 line input. r_aux1 42 48 i right auxiliary #1 line input. l_aux2 38 44 i left auxiliary #2 line input. r_aux2 43 49 i right auxiliary #2 line input. l_out 40 46 o left line output. r_out 41 47 o right line output. m_in 46 56 i mono input. m_out 47 57 o mono output. miscellaneous pin name plcc tqfp i/o description xtal1i 17 12 i 24.576 mhz crystal #1 input. xtal1o 18 13 o 24.576 mhz crystal #1 output. xtal2i 21 16 not used on the ad1845. xtal2o 22 17 not used on the ad1845. pwrdwn 23 18 i power down signal. active lo places the ad1845 in its lowest power consumption mode. all sections of the ad1845, including the digital interface, are shut down and consume minimal power. int 57 72 o host interrupt pin. a host interrupt is generated to notify the host that a specified event has occurred. xctl1:0 58 & 56 73 & 71 o external control. these signals reflect the current status of register bits inside the ad1845. they can be used for signaling or to control external logic. reset 24 19 i reset. active lo resets all digital registers and filters, and resets all analog filters. active lo places the ad1845 in the lowest power consumption mode. xtal1 is required to be running during the minimum low pulsewidth of the reset signal. v ref 32 35 o voltage reference. nominal 2.25 volt reference available for dc-coupling and level- shifting. v ref should not be used to sink or source current. v ref_f 33 38 i voltage reference filter. voltage reference filter point for external bypassing only. l_filt 31 33 i left channel filter. this pin requires a 1.0 m f capacitor to analog ground for proper operation. r_filt 26 25 i right channel filter. this pin requires a 1.0 m f capacitor to analog ground for proper operation. nc 48C52, 2C5, 21C24 no connect. 55 26, 27, 32, 34, 36, 37, 39, 50C53, 58C66, 69, 70, 80C83, 94C97
ad1845 C9C rev. c power supplies pin name plcc tqfp i/o description v cc 35 & 36 41 & 42 i analog supply voltage (+5 v). gnda 34 & 37 40 & 43 i analog ground. v dd 1, 7, 15, 10, 14, i digital supply voltage (+5 v). 19, 45, 55, 68, 54 88, 98 gndd 2, 8, 16, 11, 15, 20, i digital ground. 20, 25, 54, 67, 44, 53, 79, 89, 64 99 (continued from page 1) unsigned magnitude pcm linear data, and 8-bit m -law or a-law companded digital data. the ?d dacs are preceded by a digital interpolation filter. an attenuator provides independent user volume control over each dac channel. nyquist images and shaped quantized noise are removed from the dacs analog stereo output by on-chip switched-capacitor and continuous-time filters. the ad1845 supports multiple low power and power-down modes to support notebook and portable computing multimedia applications. the adc, dac, and mixer paths can be sus- pended independently allowing the ad1845 to be used for capture-only or playback-only, lessening power consumption and extending battery life. the ad1845 includes a variable sample frequency generator, that allows the codec to instantaneously change sample rates with a resolution of 1 hz without clicks and pops. addi- tionally, ?d quantization noise is kept out of the 20 khz audio band regardless of the chosen sample rate. the codec uses the variable sample frequency generator to derive all internal clocks from a single external crystal or clock source. expanded mode (mode2) mode1 is the initial state of the ad1845. in this state the ad1845 appears as an ad1848 compatible device. to access the expanded modes of operation on the ad1845, the mode2 bit should be set in the miscellaneous information control register. when this bit is set to one, 16 additional indirect registers can be addressed allowing the user to access the ad1845s expanded features. the ad1845 can return to mode1 operation by clearing the mode2 bit. in both mode1 and mode2, the capture and playback fifos are active to prevent data loss. the additional mode2 functions are: 1. full-duplex dma support. 2. mic input mixer, mute and volume control. 3. mono output with mute control. 4. mono input with mixer volume control. 5. software controlled advanced power-down modes. 6. programmable sample rates from 4 khz to 50 khz in 1 hz increments. address decode cs a1 a0 wr rd data7:0 dbdir dben pdrq cdrq pdak cdak int ad1845 18 aen sa19:2 sa1 sa0 iowc iorc data7:0 drq drq dak dak irq 8 8 g 74_245 ba dir s a b u s i figure 1. interface to isa bus external circuit requirements are limited to a minimal number of low cost support components. anti-imaging dac output filters are incorporated on-chip. dynamic range exceeds 80 db over the 20 khz audio band. sample rates from 4 khz to 50 khz are supported from a single external crystal or clock source. the ad1845 has built-in 8/16 ma (user selectable) bus drivers. if 24 ma drive capability is required, the ad1845 generates enable and direction controls for ic bus buffers such as the 74 245. the codec includes a stereo pair of ?d analog-to-digital con- verters and a stereo pair of ?d digital-to-analog converters. the ad1845 mixer surpasses mpc level-2 recommendations. inputs to the adc can be selected from four stereo pairs of analog signals: line (line), microphone (mic), auxiliary line #1 (aux1), and post-mixed dac output. a software-con- trolled programmable gain stage allows independent gain for each channel going into the adc. in addition, the analog mixer allows the mono input (m_in), mic, aux1, line and auxil- iary line #2 (aux2) signals to be mixed with the dacs output. the adcs output can be digitally mixed with the dacs input. the pair of 16-bit outputs from the adcs is available over a byte-wide bidirectional interface that also supports 16-bit digital input to the dacs and control information. the ad1845 can accept and generate 16-bit twos complement pcm linear digital data in both little endian or big endian byte ordering, 8-bit
ad1845 C10C rev. c digital mixing stereo digital output from the adcs can be digitally mixed with the input to the dacs. digital output from the adcs going out of the data port is unaffected by the digital mix. along the digi tal mix datapath, the 16-bit linear output from the adcs is attenuated by an amount specified with control bits. both channels of the digital mix datapath are attenuated by the same amount. (note that internally the ad1845 always works with 16-bit pcm linear data, digital mixing included; format conver- sions take place at the input and output.) sixty-four steps of C1.5 db attenuation are supported to C94.5 db. the digital mix datapath can also be completely muted. note that the level of the mixed signal is also a function of the input pga settings, since they affect the adcs output. the attenuated digital mix data is digitally summed with the dac input data prior to the dacs datapath attenuators. the digital sum of digital mix data and dac input data is clipped at plus or minus full scale and does not wrap around. because both stereo signals are mixed before the output attenuators, mix data is attenuated a second time by the dacs datapath attenuators. in case the ad1845 is capturing data, but adc output data is not removed in time (adc overrun), the last sample captured before overrun will be used for the digital mix. in case the ad1845 is playing back data, but input digital dac data fails to arrive in time (dac underrun), a midscale zero will be added to the digital mix data when the dacz control bit is set to 0; otherwise, the dac will output the previous valid sample in an underrun condition. analog outputs stereo and mono line-level outputs are available at external pins. each channel of this output can be independently muted. when muted, the outputs will settle to a dc value near v ref , the midscale reference voltage. the output is selectable for 2.0 v peak-to-peak or 2.8 v peak-to-peak. when selecting the line output as an input to the adc, the adc automatically com- pensates for the output level selection. digital data types the ad1845 supports five global data types: 16-bit twos comple- ment linear pcm (little endian and big endian byte ordering), 8-bit unsigned linear pcm, companded m -law, and 8-bit com- panded a-law, as specified by control register bits. data in all formats is always transferred msb first. all data formats that are less than 16 bits are msb-aligned to ensure the use of full system resolution. the 16-bit pcm data format is capable of representing 96 db of dynamic range. eight-bit pcm can represent 48 db of dy- namic range. companded m -law and a-law data formats use nonlinear coding with less precision for large amplitude signals. the loss of precision is compensated for by an increase in dy- namic range to 64 db and 72 db, respectively. on input, 8-bit companded data is expanded to an internal linear representation, according to whether m -law or a-law was specified in the codecs internal registers. note that when m -law compressed data is expanded to a linear format, it requires 14 bits. a-law data expanded requires 13 bits. functional description this section overviews the functionality of the ad1845 and is intended as a general introduction to the capabilities of the device. as much as possible, detailed reference information has been placed in control registers and other sections. the user is not expected to refer repeatedly to this section. analog inputs the ad1845 soundport stereo codec accepts stereo line-level and microphone-level inputs. the line, mic, aux1, and post-mixed dac output are available to the adc multiplexer. the dac output can be mixed with line, mic, aux1, aux2 and m_in. each channel of the mic inputs can be amplified by +20 db to compensate for the difference between line levels and typical condenser microphone levels. analog mixing the m_in mono input signal, mic, line, aux1 and aux2 analog stereo signals can be mixed in the analog domain with the dac output. each channel of each aux, line and mic analog input can be independently gained/attenuated from +12 db to C34.5 db in 1.5 db steps or completely muted. m_in can be attenuated from 0 db to C45 db in 3 db steps or muted. the post-mixed dac outputs are available on l_out and r_out and also to the adc input multiplexer. even if the ad1845 is not playing back data from its dacs, the analog mix function can still be active. analog-to-digital datapath the pga following the input multiplexer allows independent selectable gains for each channel from 0 db to 22.5 db in +1.5 db steps. the codec can operate either in a global stereo mode or in a global mono mode with left-channel inputs appearing at both channel outputs. the ad1845 ?d adcs incorporate a fourth-order modulator. a single pole of passive filtering is all that is required for anti- aliasing the analog input because of the adcs high over sam- pling ratio. the adcs include linear-phase digital decimation filters that low-pass filter the input to 0.4 f s . (f s is the word rate or sampling frequency.) adc input over range conditions are reported on status bits in the test and initializa- tion register. digital-to-analog datapath the ?d dacs are preceded by a programmable attenuator and a low-pass digital interpolation filter. the anti-imaging interpo- lation filter over samples and digitally filters the higher fre- quency images. the attenuator allows independent control of each dac channel from 0 db to C94.5 db in C1.5 db steps plus full mute. the dacs ?d noise shapers also over sample and convert the signal to a single-bit stream. the dac outputs are then filtered in the analog domain by a combinat ion of switched- capacitor and continuous-time filters. they remove the very high frequency components of the dac bit stream output. no external components are required. changes in dac output attenuation take effect only on zero crossings, eliminating zipper noise on playback. each chan- nel has its own independent zero-crossing detector and attenua- tor change control circuitry. a timer guarantees that requested volume changes will occur even in the absence of a zero cross- ing. the time-out period is 8 milliseconds at a 48 khz sampling rate and 48 milliseconds at an 8 khz sampling rate. (timeout [ms] ? 384 ? f s [khz].)
ad1845 C11C rev. c msb lsb compressed input data 8 7 0 15 msb lsb 3/2 2/1 0 15 expansion msb lsb 3/2 2/1 0 15 dac input 000/00 figure 2. m -law or a-law expansion when 8-bit companding is specified, the adcs linear output is compressed to the format specified. msb lsb 0 15 msb lsb 3/2 2/1 0 15 msb lsb 8 7 0 15 00000000 adc output truncation compression figure 3. m -law or a-law compression note that all format conversions take place at input or output. internally, the ad1845 always uses 16-bit linear pcm represen- tations to maintain maximum precision. timer registers the timer registers are provided for system level synchroniza- tion, and for periodic interrupt generation. the 16-bit timer time base is determined by the frequency of the connected input clock source. the timer is enabled by setting the timer enable bit, te, in the alternate feature enable register. to set the timer, load the upper and lower timer bits registers. the timer value will then be loaded into an internal count register with a value of approximately 10 m s (the exact timer value is listed in the regis- ter descriptions). the internal count register will decrement until it reaches zero, then the timer interrupt bit, ti, is set and an interrupt will be sent to the host. the next timer clock will load the internal count register with the value of the timer register, and the timer will be reinitialized. to clear the inter- rupt, write to the status register or write a 0 to ti. interrupts the ad1845 supports interrupt conditions generated by dma playback count expiration, dma capture count expiration, or timer expiration. the int bit will remain set, hi, until a write has been completed to the status register or by clearing the ti, ci, or pi bit (depending on the existing condition) in the cap- ture playback timer register. the ien bit of the pin control regi ster determines whether the interrupt pin responds to an interrupt condition and reflects the interrupt state on the int status bit. power supplies and voltage reference the ad1845 operates from a +5 v power supply. independent analog and digital supplies are recommended for optimal perfor- mance though excellent results can be obtained in single-supply systems. a voltage reference is included on the codec and its 2.25 v buffered output is available on an external pin (v ref ). the reference output can be used for biasing op amps used in dc coupling. the internal reference is externally bypassed to analog ground at the v ref_f pin. clocks and sample rates the ad1845 operates from a single external crystal or clock source. from a single input, a wide range of sample rates can be generated. the ad1845 default frequency source is a 24.576 mhz input. the ad1845 can also be driven from a 14.31818 mhz (osc), 24 mhz, 25 mhz or 33 mhz input frequency source. in mode1, the input drives the internal variable sample frequency generator to derive the following ad1848 compatible sample rates: 5.5125, 6.615, 8, 9.6, 11.025, 16, 18.9, 22.05, 27.42857, 32, 33.075, 37.8, 44.1, 48 khz. in mode2, the ad1845 can be programmed to gen- erate any sample frequency between 4 khz and 50 khz with 1 hz resolution. note that it is no longer required to enter mode change enable (mce) to change the sample rate. this feature allows the user to change the ad1845s sample rate on the fly. control registers control register architecture the ad1845 soundport stereo codec accepts both data and control information through its byte-wide parallel port. indirect addressing minimizes the number of external pins required to access all 37 of its byte-wide internal registers. only two exter- nal address pins, adr1:0, are required to accomplish all data and control transfers. these pins select one of five direct regis- ters. (adr1:0 = 3 addresses two registers, depending on whether the transfer is for a playback or capture.) adr1:0 register name 0 index address register 1 indexed data register 2 status register 3 pio data register figure 4. direct register map
ad1845 C12C rev. c a write to or a read from the indexed data register will access the indirect register which is indexed by the value most recent ly written to the index address register. the status register and the pio data register are always accessible directly, without indexing. the 32 indirect register indexes are shown in figure 5: index register name reset/default state 0 left input control 000x 0000 1 right input control 000x 0000 2 left aux #1 input control 1xx0 1000 3 right aux #1 input control 1xx0 1000 4 left aux #2 input control 1xx0 1000 5 right aux #2 input control 1xx0 1000 6 left output control 1x00 0000 7 right output control 1x00 0000 8 clock and data format 0000 0000 9 interface configuration 00xx 1000 10 pin control 00xx xx00 11 test and initialization 0000 0000 12 miscellaneous information 10x0 1010 13 digital mix/attenuation 0000 00x0 14 upper base count 0000 0000 15 lower base count 0000 0000 16 alternate feature enable/left mic input control 0001 0001 17 mic mix enable/right mic input control 0001 000x 18 left line gain, attenuate, mute, mix 1xx0 1000 19 right line gain, attenuate, mute, mix 1xx0 1000 20 lower timer 0000 0000 21 upper timer 0000 0000 22 upper frequency select 0001 1111 23 lower frequency select 0100 0000 24 capture playback timer x000 0000 25 revision id 100x x000 26 mono control 00xx 0011 27 power-down control 000x 0xxx 28 capture data format control 0000 xxxx 29 crystal clock select/total power-down 000x xxx0 30 capture upper base count 0000 0000 31 capture lower base count 0000 0000 x indicates reserved bit, always write 0s to these bits. figure 5. indirect register map and reset/default states a detailed map of all direct and indirect register contents is summarized for reference as follows:
ad1845 C13C rev. c figure 6. register summary direct registers adrl:0 data 7 data 6 data 5 data 4 data 3 data 2 data 1 data 0 0 init mce trd ixa4 ixa3 ixa2 ixa1 ixa0 1 ixd7 ixd6 ixd5 ixd4 ixd3 ixd2 ixd1 ixd0 2 cu/l cl/r crdy sour pu/l pl/r prdy int 3 cd7 cd6 cd5 cd4 cd3 cd2 cd1 cd0 3 pd7 pd6 pd5 pd4 pd3 pd2 pd1 pd0 indirect registers ixa3:0 data 7 data 6 data 5 data 4 data 3 data 2 data 1 data 0 0 lss1 lss0 lmge res lig3 lig2 lig1 lig0 1 rss1 rss0 rmge res rig3 rig2 rig1 rig0 2 lmx1 res res lx1a4 lx1a3 lx1a2 lx1a1 lx1a0 3 rmx1 res res rx1a4 rx1a3 rx1a2 rx1a1 rx1a0 4 lmx2 res res lx2a4 lx2a3 lx2a2 lx1a1 lx2a0 5 rmx2 res res rx2a4 rx2a3 rx2a2 rx2a1 rx2a0 6 ldm res lda5 lda4 lda3 lda2 lda1 lda0 7 rdm res rda5 rda4 rda3 rda2 rda1 rda0 8 fmt1 fmt0 c/l s/m cfs2 cfs1 cfs0 css 9 cpio ppio res res acal sdc cen pen 10 xctl1 xctl0 res res res res ien initd 11 cor pur aci drs orr1 orr0 orl1 orl0 12 mid mode2 buf8 res id3 id2 id1 id0 13 dma5 dma4 dma3 dma2 dma1 dma0 res dme 14 ub7 ub6 ub5 ub4 ub3 ub2 ub1 ub0 15 lb7 lb6 lb5 lb4 lb3 lb2 lb1 lb0 expanded mode (requires mode2=1) 16 ol te lmg4 lmg3 lmg2 lmg1 lmg0 dacz 17 lmme rmme rmg4 rmg3 rmg2 rmg1 rmg0 res 18 llm res res llg4 llg3 llg2 llg1 llg0 19 rlm res res rlg4 rlg3 rlg2 rlg1 rlg0 20 tl7 tl6 tl5 tl4 tl3 tl2 tl1 tl0 21 tu7 tu6 tu5 tu4 tu3 tu2 tu1 tu0 22 fu7 fu6 fu5 fu4 fu3 fu2 fu1 fu0 23 fl7 fl6 fl5 fl4 fl3 fl2 fl1 fl0 24 res ti ci pi cu co po pu 25 v2 v1 v0 res res cid2 cid1 cid0 26 mim mom res res mia3 mia2 mia1 mia0 27 adcpwd dacpwd mixpwd res fren res res res 28 cfmt1 cfmt0 cc/l cs/m res res res res 29 xfs2 xfs1 xfs0 res res res res totpwd 30 cub7 cub6 cub5 cub4 cub3 cub2 cub1 cub0 31 clb7 clb6 clb5 clb4 clb3 clb2 clb1 clb0 note that the only sticky bit in any of the ad1845 control registers is the interrupt (int) bit. all other bits can change wit h every sample period.
ad1845 C14C rev. c direct control register definitions index address register (adr1:0 = 0) adr1:0 data 7 data 6 data 5 data 4 data 3 data 2 data 1 data 0 0 init mce trd ixa4 ixa3 ixa2 ixa1 ixa0 ixa4:0 index address. these bits define the address of the ad1845 register accessed by the indexed data register. these bits are read/write. ixa4 is not active in mode1. always write 0 to this bit when using the ad1845 in mode1. trd transfer request disable. this bit, when set, causes pio and dma transfers to cease when the interrupt status (int) bit of the status register is set. 0 transfers enabled during interrupt. pdrq and cdrq pin outputs are generated uninhibited by interrupts. dma current counter register decrements with every sample transferred when either pen or cen are en abled. 1 transfers disabled by interrupt. pdrq and cdrq pin outputs are generated only if int bit is 0 (when either pen or cen, respectively are enabled). any pending playback or capture requests are allowed to complete at the time when int is set. after pending requests complete, the data in the fifo will be con- sumed at the sample rate. subsequently, the midscale inputs will be internally generated for the dacs if the dacz bit is set, otherwise, the previous valid sample will be repeated, and the adc output buffer will contain the last valid output. cle aring the sticky int bit (or the trd bit) will cause the r esumption of playback and/or capture requests (presuming pen and/or cen are enabled). the dma current counter register will not decrement while both the trd bit is set and the int bit is a one. no over run or under run error will be reported when transfers are disabled by int. mce mode change enable. this bit must be set whenever the current functional mode of the ad1845 is changed where noted in the indirect control registers 8, 9, 28 and 29. mce must be cleared at the completion of the desired register changes. the dac outputs are automatically muted when the mce bit is set. after mce is cleared, the dac outputs will be restored to the state specified by the ldm and rdm mute bits. both adcs and dacs are automatically muted for 32 sample cycles after exiting the mce state to allow the refer- ence and all filters to settle. the adcs will produce midscale values; the dacs analog output will be muted. all converters are internally operating during these 32 sample cycles, and the ad1845 will expect playback data and will generate (midscale) capture data. note that the autocalibrate-in-progress (aci) bit will be set on exiting from the mce state only when acal is set. if acal bit is set, aci will remain hi for these 384 sample cycles, allow- ing system software to poll this bit rather than count cycles. special sequences must be followed if autocalibrate (acal) is set during mode change enable. see the autocalibration section. init ad1845 initialization. this bit is set when the ad1845 cannot respond to parallel bus cycles. this bit is read-only. immediately after reset and once the ad1845 has left the init state, the initial value of this register will be 0100 0000 (40h ). during ad1845 initialization, this register cannot be written and always reads 1000 0000 (80h). indexed data register (adr1:0 = 1) adr1:0 data 7 data 6 data 5 data 4 data 3 data 2 data 1 data 0 1 ixd7 ixd6 ixd5 ixd4 ixd3 ixd2 ixd1 ixd0 ixd7:0 indexed register data. these bits contain the contents of the ad1845 register referenced by the indexed data register. during ad1845 initialization, this register cannot be written and always reads as 1000 0000 (80h).
ad1845 C15C rev. c status register (adr1:0 = 2) adr1:0 data 7 data 6 data 5 data 4 data 3 data 2 data 1 data 0 2 cu/l cl/r crdy sour pu/l pl/r prdy int int interrupt status. this sticky bit (the only one) indicates the status of the interrupt logic of the ad1845. this bit is cleared by any host write of any value to this register. the ien bit of the pin control register determines whether the state of this bit is reflected on the int pin of the ad1845. the only interrupt conditions supported by the ad1845 are generated by the underflow of the dma current count register or the timer registers. the timer register operates at a 10 m s resolution. clearing int requires a 10 m s wait. if an immediate clearing of a ti condition is desired, clear the te bit to remove the timer interrupt. 0 interrupt pin inactive 1 interrupt pin active prdy pl ayback data register ready. the pio or dma playback data register is ready for more data. this bit is intended to be used when direct programmed i/o d ata transfers are desired; however, it is also valid for dma transfers. this bit is read-only. 0 dac data is still valid. do not overwrite. 1 dac data is stale. ready for next host data write value. pl/r playback left/right sample. this bit indicates whether the pio or dma playback data needed is for the right channel dac or left channel dac. this bit is read-only. 0 right channel needed 1 left channel or mono pu/l playback upper/lower byte. this bit indicates whether the pio or dma playback data needed is for the upper or lower byte of the channel. this bit is read-only. 0 lower byte needed 1 upper byte needed or any 8-bit mode sour sample over/underrun. this bit indicates that the most recent sample was not serviced in time and therefore either a capture overrun (cor) or playback underrun (pur) has occurred. the bit indicates an overrun for adc capture and an underrun for dac playback. if both capture and playback are enabled, the source that set this bit can be determined by reading cor and pur. this bit changes on a sample by sample basis. this bit is read-only. crdy capture data ready. the pio capture data register contains data ready for reading by the host. this bit should only be used when direct programmed i/o data transfers are desired. this bit is read-only. 0 adc data is stale. do not reread the information. 1 adc data is fresh. ready for next host data read. cl/r capture left/right sample. this bit indicates whether the pio capture data waiting is for the right channel adc or left channel adc. this bit is read-only. 0 right channel 1 left channel or mono cu/l capture upper/lower byte. this bit indicates whether the pio capture data ready is for the upper or lower byte of the channel. this bit is read-only. 0 lower byte ready 1 upper byte ready or any 8-bit mode the prdy, crdy, and int bits of this status register can change asynchronously to host accesses. the host may access this regi s- ter while the bits are transitioning. the host read may return a zero value just as these bits are changing, for example. a o ne value would not be read until the next host access. while the fifos have multiple samples available for transfer, the crdy and prdy status bits for consecutive samples are approxi - mately 320 nsC600 ns apart. this registers initial state after reset is 1100 1100.
ad1845 C16C rev. c pio data registers (adr1:0 = 3) adr1:0 data 7 data 6 data 5 data 4 data 3 data 2 data 1 data 0 3 cd7 cd6 cd5 cd4 cd3 cd2 cd1 cd0 3 pd7 pd6 pd5 pd4 pd3 pd2 pd1 pd0 the pio data registers are two registers mapped to the same address. writes send data to the pio playback data register (pd7:0). reads will receive data from the pio capture data register (cd7:0). during ad1845 initialization, the pio playback data register cannot be written to and the capture data register is always read as 1000 0000 (80h). cd7:0 pio capture data register. this is the control register where capture data is read during programmed i/o data transfers. the reading of this register will increment the capture byte state machine so that the following read will be from the next appropriate byte in the sample. the exact byte which is next to be read can be determined by reading the status register. once all relevant bytes have been read, the state machine will stay pointed to the last byte of the sample until a new sample is received from the adcs. once this has occurred, the state machine and status register will point to the first byte of the sample. pd7:0 pio playback data register. this is the control register where playback data is written during programmed i/o data transfers. writing data to this register will increment the playback byte tracking state machine so that the following write will be to the correct byte of the sample. once all bytes of a sample have been written, subsequent byte writes to this port are ignored. the state machine is reset when the current sample is sent to the dacs. indirect control register definitions the following control registers are accessed by writing index values to ixa3:0 in the index address register (adr1:0 = 0) follo wed by a read/write to the indexed data register (adr1:0 = 1). left input control (ixa3:0 = 0) ixa3:0 data 7 data 6 data 5 data 4 data 3 data 2 data 1 data 0 0 lss1 lss0 lmge res lig3 lig2 lig1 lig0 lig3:0 left input gain select. the least significant bit of this gain select represents +1.5 db. maximum gain is +22.5 db. res reserved for future expansion. always write a zero to this bit. lmge left input microphone gain enable. this bit will enable the +20 db gain of the left mic input signal. lss1:0 left input source select. these bits select the input source for the left gain stage preceding the left adc. lss1 lss0 left input source 0 0 left line source selected 0 1 left auxiliary 1 source selected 1 0 left microphone source selected 1 1 left line post-mixed dac output source selected this registers initial state after reset is 000x 0000. right input control (ixa3:0 = 1) ixa3:0 data 7 data 6 data 5 data 4 data 3 data 2 data 1 data 0 1 rss1 rss0 rmge res rig3 rig2 rig1 rig0 rig3:0 r ight input gain select. the least significant bit of this gain select represents +1.5 db. maximum gain is +22.5 db. res reserved for future expansion. always write a zero to this bit. rmge right input microphone gain enable. this bit will enable the +20 db gain of the right mic input signal. rss1:0 right input source select. these bits select the input source for the right channel gain stage preceding the right adc.
ad1845 C17C rev. c rss1 rss0 right input source 0 0 right line source selected 0 1 right auxiliary 1 source selected 1 0 right microphone source selected 1 1 right post-mixed dac output source selected this registers initial state after reset is 000x 0000. left auxiliary #1 input control (ixa3:0 = 2) ixa3:0 data 7 data 6 data 5 data 4 data 3 data 2 data 1 data 0 2 lmx1 res res lx1a4 lx1a3 lx1a2 lx1a1 lx1a0 lx1a4:0 left auxiliary input #1 attenuate select. the least significant bit of this gain/attenuate select represents 1.5 db. lx1a4:0 = 0 produces a +12 db gain. lx1a4:0 = 01000 (8 decimal) produces 0 db gain. maximum attenua- tion is C34.5 db. see figure 10. res reserved for future expansion. always write zeros to these bits. lmx1 left auxiliary #1 mute. this bit, when set, will mute the left channel of the auxiliary #1 input source. this bit powers up set. this registers initial state after reset is 1xx0 1000. right auxiliary #1 input control (ixa3:0 = 3) ixa3:0 data 7 data 6 data 5 data 4 data 3 data 2 data 1 data 0 3 rmx1 res res rx1a4 rx1a3 rx1a2 rx1a1 rx1a0 rx1a4:0 right auxiliary input #1 attenuate select. the least significant bit of this gain/attenuate select represents 1.5 db. rx1a4:0 = 0 produces a +12 db gain. rx1a4:0 = 01000 (8 decimal) produces 0 db gain. maximum attenuation is C34.5 db. see figure 10. res reserved for future expansion. always write zeros to these bits. rmx1 right auxiliary #1 mute. this bit, when set, will mute the right channel of the auxiliary #1 input source. this bit powers up set. this registers initial state after reset is 1xx0 1000. left auxiliary #2 input control (ixa3:0 = 4) ixa3:0 data 7 data 6 data 5 data 4 data 3 data 2 data 1 data 0 4 lmx2 res res lx2a4 lx2a3 lx2a2 lx2a1 lx2a0 lx2a4:0 left auxiliary input #2 attenuate select. the least significant bit of this gain/attenuate select represents 1.5 db. lx2a4:0 = 0 produces a +12 db gain. lx2a4:0 = 01000 (8 decimal) produces 0 db gain. maximum attenua- tion is C34.5 db. see figure 10. res reserved for future expansion. always write zeros to these bits. lmx2 left auxiliary #2 mute. this bit, when set to 1, will mute the left channel of the auxiliary #2 input source. this bit powers up set. this registers initial state after reset is 1xx0 1000. right auxiliary #2 input control (ixa3:0 = 5) ixa3:0 data 7 data 6 data 5 data 4 data 3 data 2 data 1 data 0 5 rmx2 res res rx2a4 rx2a3 rx2a2 rx2a1 rx2a0
ad1845 C18C rev. c rx2a4:0 right auxiliary input #2 attenuate select. the least significant bit of this gain/attenuate select represents 1.5 db. rx2a4:0 = 0 produces a +12 db gain. rx2a4:0 = 01000 (8 decimal) produces 0 db gain. maximum attenuation is C34.5 db. see figure 10. res reserved for future expansion. always write zeros to these bits. rmx2 right auxiliary #2 mute. this bit, when set, will mute the right channel of the auxiliary #2 input source. this bit powers up set. this registers initial state after reset is 1xx0 1000. left dac control (ixa3:0 = 6) ixa3:0 data 7 data 6 data 5 data 4 data 3 data 2 data 1 data 0 6 ldm res lda5 lda4 lda3 lda2 lda1 lda0 lda5:0 left dac attenuate select. the least significant bit of this gain/attenuate select represents 1.5 db. maximum attenuation is C94.5 db. see figure 7. res reserved for future expansion. always write a zero to this bit. ldm left dac mute. this bit, when set to 1, will mute the left dac output. this bit powers up active. this registers initial state after reset is 1x00 0000. right dac control (ixa3:0 = 7) ixa3:0 data 7 data 6 data 5 data 4 data 3 data 2 data 1 data 0 7 rdm res rda5 rda4 rda3 rda2 rda1 rda0 rda5:0 right dac attenuate select. the least significant bit of this gain/attenuate select represents 1.5 db. maximum attenuation is C94.5 db. see figure 7. res reserved for future expansion. always write a zero to this bit. rdm right dac mute. this bit, when set to 1, will mute the right dac output. this bit powers up active. this registers initial state after reset is 1x00 0000. a5 a4 a3 a2 a1 a0 mix gain 000000 1C1. 0 db 000001 1 C1.5 db 000010 1 C3.0 db 000011 1 C4.5 db 000100 1 C6.0 db 000101 1 C7.5 db 000110 1 C9.0 db 000111 C10.5 db 001000 C12.0 db 001001 C13.5 db 001010 C15.0 db 001011 C16.5 db ? ?????? ? ?????? ? ?????? 110100C 78.0 db 110101C 79.5 db 110110C 81.0 db 110111C 82.5 db 111000C 84.0 db 111001C 85.5 db 111010C 87.0 db 111011C 88.5 db 111100C 90.0 db 111101C 91.5 db 111110C 93.0 db 111111C 94.5 db figure 7. mix gain level setting: dac
ad1845 C19C rev. c clock and data format register (ixa3:0 = 8) ixa3:0 data 7 data 6 data 5 data 4 data 3 data 2 data 1 data 0 8 fmt1 fmt0 c/l s/m cfs2 cfs1 cfs0 css note: placing the ad1845 in the mode change enable (mce) state is not required when changing the sample rate. however, changes to fmt[1:0], c/l, and s/m require mce or setting pen = 0. css clock source select. this bit in conjunction with cfs2:0 selects the audio sample rate frequency. see figure 8 below. note: mode2 allows a wider range of sample rate frequencies to be selected by using the frequency select register (refer to registers 22 and 23). cfs2:0 clock frequency divide select. these bits in conjunction with css select the audio sample frequency. cfs2 cfs1 cfs0 css sample rate 0 0 0 0 8.0 khz 0 0 0 1 5.5125 khz 0 0 1 0 16.0 khz 0 0 1 1 11.025 khz 0 1 0 0 27.42857 khz 0 1 0 1 18.9 khz 0 1 1 0 32.0 khz 0 1 1 1 22.05 khz 1 0 0 0 reserved 1 0 0 1 37.8 khz 1 0 1 0 reserved 1 0 1 1 44.1 khz 1 1 0 0 48.0 khz 1 1 0 1 33.075 khz 1 1 1 0 9.6 khz 1 1 1 1 6.615 khz figure 8. mode1 audio sample frequency select s/m stereo/mono select. this bit determines how the audio data streams are formatted. selecting stereo will result with alternating samples representing left and right audio channels. mono playback plays the same audio sample on both channels. mono capture only captures data from the left audio channel. 0 mono 1 stereo c/l companded/linear select. this bit selects between a linear digital representation of the audio signal or a nonlin ear, companded format for all input and output data. the type of linear pcm or the type of companded format is defined by the fmt bits. 0 linear pcm 1 companded fmt[1:0] format select. the bits define the format for all digital audio input and outputs based on the state of the c/l bit. see figure 9 for fmt and c/l bit settings that determine the audio data type format. res reserved for future expansion. always write a zero to this bit. this registers initial state after reset is 0000 0000. fmt1 fmt0 c/l audio data type 0 0 0 linear, 8-bit unsigned pcm 00 1 m -law, 8-bit companded 0 1 0 linear, 16-bit twos-complement pcm little endian 0 1 1 a-law, 8-bit companded 1 0 0 reserved 1 0 1 reserved 1 1 0 linear, 16-bit twos complement big endian 1 1 1 reserved figure 9. digital audio data type
ad1845 C20C rev. c interface configuration register (ixa3:0 = 9) ixa3:0 data 7 data 6 data 5 data 4 data 3 data 2 data 1 data 0 9 cpio ppio res res acal sdc cen pen note: placing the ad1845 in the mode change enable (mce) state is not required when changing the cen and pen bits in this register. pen playback enable. this bit will enable the playback of data in the format selected. the ad1845 will generate pdrq and respond to pdak signals when this bit is enabled and ppio = 0. if ppio = 1, this bit enables pro- grammed i/o (pio) playback mode. 0 playback disabled (pdrq and pio playback data register inactive) 1 playback enabled cen capture enable. this bit will enable the capture of data in the format selected. the ad1845 will generate cdrq and respond to cdak signals when this bit is enabled and cpio = 0. if cpio = 1, this bit enables pio capture mode. 0 capture disable (cdrq and pio capture data register inactive) 1 capture enable sdc single dma channel. this bit will force both capture and playback dma requests to occur on the playback dma channel. the capture dma cdrq pin will be lo. this bit will allow the ad1845 to be used with only one dma channel. simultaneous capture and playback cannot occur in this mode. should both capture and playback be enabled (cen=pen=1) in the mode, only playback will occur. see data and control transfers for further explanation. 0 dual dma channel mode 1 single dma channel mode acal autocalibrate enable. this bit determines whether the ad1845 performs an autocalibration whenever the mode change enable (mce) bit changes from hi to lo. see autocalibration for a description of a complete autocalibration sequence. note that an autocalibration is forced whenever the reset or pwrdwn pin is asserted lo then transitions hi regardless of the state of the acal bit. 0 no autocalibration 1 autocalibration after mode change res reserved for future expansion. always write zeros to these bits. ppio playback pio enable. this bit determines whether the playback data is transferred via dma or pio. 0 dma transfers only 1 pio transfers only cpio capture pio enable. this bit determines whether the capture data is transferred via dma or pio. 0 dma transfers only 1 pio transfers only this registers initial state after reset is 00xx 1000. pin control register (ixa3:0 = 10) ixa3:0 data 7 data 6 data 5 data 4 data 3 data 2 data 1 data 0 10 xctl1 xctl0 res res res res ien initd initd disable setting the init bit after changing the sample rate in mode1. otherwise the init bit is set hi for approximately 200 m s after changing the sample rate. 0 init bit is enabled 1 init bit is disabled ien interrupt enable. this bit enables the interrupt pin. the interrupt pin will go active hi when the number of samples programmed in the base count register is reached. 0 interrupt disabled 1 interrupt enabled res reserved for future expansion. always write zeros to these bits.
ad1845 C21C rev. c xctl1:0 external control. the state of these bits is reflected on the xctl1:0 pins of the ad1845. 0 logic lo on xctl1:0 pins 1 logic hi on xctl1:0 pins this registers initial state after reset is 00xx xx00. test and initialization register (ixa3:0 = 11) ixa3:0 data 7 data 6 data 5 data 4 data 3 data 2 data 1 data 0 11 cor pur aci drs orr1 orr0 orl1 orl0 orl1:0 overrange left detect. these bits indicate the overrange on the left capture channel. these bits change on a sample-by-sample basis, and are read-only. orl1 orl0 0 0 less than C1 db underrange 0 1 between C1 db and 0 db underrange 1 0 between 0 db and +1 db overrange 1 1 greater than +1 db overrange orr1:0 overrange right detect. these bits indicate the overrange on the right capture channel. these bits change on a sample-by-sample basis, and are read-only. orr1 orr0 0 0 less than C1 db underrange 0 1 between C1 db and 0 db underrange 1 0 between 0 db and +1 db overrange 1 1 greater than +1 db overrange drs data request status. this bit indicates the current status of the pdrq and cdrq pins of the ad1845. 0 cdrq and pdrq are presently inactive (lo) 1 cdrq or pdrq are presently active (hi) aci autocalibrate-in-progress. this bit indicates the state of autocalibration or a recent exit from mode change enable (mce). this bit is read-only. 0 autocalibration is not in progress 1 autocalibration is in progress or mce was exited within the last 128 sample periods pur playback underrun. this bit is set when the playback fifo is empty and after the next valid sample has been played back. if this condition exists, dacz determines the dac playback value. in mode1, dacz is always set and returns a midscale value. cor capture overrun. this bit is set when the capture fifo is full and an additional sample has been captured. the sample being read will not be overwritten by the new sample. the new sample will be ignored. this bit changes on a sample by sample basis. the occurrence of a pur and/or cor is designated in the status registers sample overrun/underrun (sour) bit. the sour bit is the logical or of the cor and pur bits. this enables a polling host cpu to detect an overrun/underrun condition while check - ing other status bits. this registers initial state after reset is 0000 0000. miscellaneous control register (ixa3:0 = 12) ixa3:0 data 7 data 6 data 5 data 4 data 3 data 2 data 1 data 0 12 mid mode2 res buf8 id3 id2 id1 id0 id3:0 ad1845 revision id. these four bits define the revision level of the ad1845. the ad1845 will have id = 1010. these bits are read-only. buf8 parallel interface bus transceiver current buffer drive. the ad1845 can be programmed to provide a current drive of 16 ma or 8 ma. 0 16 ma current drive. 1 8 ma current drive. res reserved for future expansion. always write 0s to these bits.
ad1845 C22C rev. c mode2 when the ad1845 is initialized, the mode2 bit is set to 0, lo, and the ad1845 is register set compatible with the ad1848 and the ad1846. setting the mode2 bit to 1, hi, enables access to the indirect registers 16 through 31 which controls the ad1845 expanded mode of operation. 0 mode1: ad1848, ad1846, and cs4248 mode 1 mode2: ad1845 enhanced feature mode mid manufacturer id bit. this bit is set to 1. this registers initial state after reset is 10x0 1010. digital mix/attenuation control register (ixa3:0 = 13) ixa3:0 data 7 data 6 data 5 data 4 data 3 data 2 data 1 data 0 13 dma5 dma4 dma3 dma2 dma1 dma0 res dme dme digital mix enable. this bit will enable the digital mix of the adcs output with the dacs input. when en- abled, the data from the adcs are digitally mixed with other data being delivered to the dacs regardless of whether or not playback is enabled (pen = 1). if capture is enabled (cen = 1) and there is a capture overrun (cor), then the last sample captured before overrun will be used for the digital mix. if playback is enabled (pen = 1) and there is a playback underrun (pur), then a midscale zero will be added to the digital mix data if dacz = 1, otherwise, the last valid sample will be repeated. 0 digital mix disabled (muted) 1 digital mix enabled res reserved for future expansion. always write a zero to this bit. dma5:0 digital mix attenuation. these bits determine the attenuation of the adc data that is mixed with the dac in- put. each attenuate step is C1.5 db ranging from 0 db to C94.5 db. this registers initial state after reset is 0000 00x0. dma playback base count registers (ixa3:0 = 14 & 15) the dma base count registers in the ad1845 simplify integration of the ad1845 in isa systems. the isa dma controller re- quires an external count mechanism to notify the host cpu via interrupt of a full dma buffer. the programmable dma base count registers will allow such interrupts to occur. the base count registers contain the number of samples to be transferred before an interrupt is generated on the interrupt (int ) pin. to load, first write a value to the lower base count register. writing a value to the upper base register will cause both base count registers to load into the current count register. once ad1845 transfers are enabled, each sample transferred causes the current count register to decrement until zero count is reached. the next sample after zero will generate the interrupt and rel oad the current count register with the values in the base count registers. the interrupt is cleared by a write to the status register. the host interrupt pin (int) will go hi during the sample period in which the current count register underflows. when using the ad1845 in mode1 (ad1848 compatible), the current count register is decremented every sample period when either the pen or cen bit is enabled. the current count register is decremented in both pio and dma data tra nsfer modes. interrupt conditions are generated by current count register underflows in both pio and dma transfers. program maximum value to the upper base count register to avoid receiving dma count interrupts while operating in pio mode. by enabling mode2, the ad1845 expanded mode, the playback counter is only decremented when a playback sample transfer occurs. upper base count register (ixa3:0 = 14) ixa3:0 data 7 data 6 data 5 data 4 data 3 data 2 data 1 data 0 14 ub7 ub6 ub5 ub4 ub3 ub2 ub1 ub0 ub7:0 upper base count. this byte is the upper byte of the base count register containing the eight most significant bits of the 16-bit base register. reads from this register return the same value which was written. the current count contained in the counters can not be read. this registers initial state after reset is 0000 0000.
ad1845 C23C rev. c lower base count register (ixa3:0 = 15) ixa3:0 data 7 data 6 data 5 data 4 data 3 data 2 data 1 data 0 15 lb7 lb6 lb5 lb4 lb3 lb2 lb1 lb0 lb7:0 lower base count. this byte is the lower byte of the base count register containing the eight least significant bits of the 16-bit base register. reads from this register return the same value which was written. the current count contained in the counters cannot be read. this registers initial state after reset is 0000 0000. expanded modes (mode2 = 1) the following registers are enabled when the ad1845 is operating in mode2 only. alternate feature enable/left mic input control register (ixa3:0 = 16) ixa3:0 data 7 data 6 data 5 data 4 data 3 data 2 data 1 data 0 16 ol te lmg4 lmg3 lmg2 lmg1 lmg0 dacz dacz dac zero. when an underrun error occurs, this bit will force the dac output to midscale. 0 output previous valid sample 1 output to midscale value lmg4:0 left mic gain. the least significant bit of this gain/attenuate select represents 1.5 db. lmg4:0 = 0 produces a +12 db gain. lmg4:0 = 01000 (8 decimal) produces 0 db gain. maximum attenuation is C34.5 db. see figure 10. te timer enable. setting this bit enables the 16-bit programmable timer (see registers 20 and 21). when the timer is enabled, the timer count is reloaded, and interrupts are generated at specified periods on the int pin. when the timer is disabled, the timer stops counting and the int pin and ti bit are cleared immediately. ol output level. this bit sets the analog output level. the line output level may be attenuated by 3 db. 0 full scale of 2.0 v p-p (C3 db) 1 full scale of 2.8 v p-p (0 db) this registers initial state after reset is 0001 0001. mic mix enable/right mic input control register (ixa3:0 = 17) ixa3:0 data 7 data 6 data 5 data 4 data 3 data 2 data 1 data 0 17 lmme rmme rmg4 rmg3 rmg2 rmg1 rmg0 res res reserved for future expansion. always write zero to this bit. rmg4:0 right mic gain. the least significant bit of this gain/attenuate select represents 1.5 db. rmg4:0 = 0 produces a +12 db gain. rmg4:0 = 01000 (8 decimal) produces 0 db gain. maximum attenuation is C34.5 db. see figure 10. rmme right mic mix enable. setting this bit enables the right microphone input to be mixed with the dac output on r_out. lmme left mic mix enable. setting this bit enables the left microphone input to be mixed with the dac output on l_out. this registers initial state after reset is 0001 000x. left line gain, attenuate, mute mix register (ixa3:0 = 18) ixa3:0 data 7 data 6 data 5 data 4 data 3 data 2 data 1 data 0 18 llm res res llg4 llg3 llg2 llg1 llg0 llg4:0 left line mix gain. allows setting the left line mix gain in thirty-two 1.5 db steps. see figure 10 for mix gain level setting. res reserved for future expansion. always write zeros to these bits.
ad1845 C24C rev. c llm left line mute. setting this bit to 1 mutes the left line input into the output mixer. this registers initial state after reset is 1xx0 1000. right line gain, attenuate, mute, mix register (ixa3:0 = 19) ixa3:0 data 7 data 6 data 5 data 4 data 3 data 2 data 1 data 0 19 rlm res res rlg4 rlg3 rlg2 rlg1 rlg0 rlg4:0 right line mix gain. allows setting the right line mix gain in thirty-two 1.5 db steps. see figure 10 for mix gain level setting. res reserved for future expansion. always write zeros to these bits. rlm right line mute. setting this bit to 1 mutes the right line input into the output mixer. this registers initial state after reset is 1xx0 1000. a4/g4 a3/g3 a2/g2 a1/g1 a0/g0 mix gain 0 0 0 0 0 +12.0 db 0 0 0 0 1 +10.5 db 0 0 0 1 0 +9.0 db 0 0 0 1 1 +7.5 db 0 0 1 0 0 +6.0 db 0 0 1 0 1 +4.5 db 0 0 1 1 0 +3.0 db 0 0 1 1 1 +1.5 db 0 1 0 0 0 +0.0 db 0 1 0 0 1 C1.5 db 0 1 0 1 0 C3.0 db 0 1 0 1 1 C4.5 db 0 1 1 0 0 C6.0 db 0 1 1 0 1 C7.5 db 0 1 1 1 0 C9.0 db 0 1 1 1 1 C10.5 db 1 0 0 0 0 C12.0 db 1 0 0 0 1 C13.5 db 1 0 0 1 0 C15.0 db 1 0 0 1 1 C16.5 db 1 0 1 0 0 C18.0 db 1 0 1 0 1 C19.5 db 1 0 1 1 0 C21.0 db 1 0 1 1 1 C22.5 db 1 1 0 0 0 C24.0 db 1 1 0 0 1 C25.5 db 1 1 0 1 0 C27.0 db 1 1 0 1 1 C28.5 db 1 1 1 0 0 C30.0 db 1 1 1 0 1 C31.5 db 1 1 1 1 0 C33.0 db 1 1 1 1 1 C34.5 db figure 10. mix gain level setting: aux1, aux2, mic and line lower timer bits register (ixa3:0 = 20) ixa3:0 data 7 data 6 data 5 data 4 data 3 data 2 data 1 data 0 20 tl7 tl6 tl5 tl4 tl3 tl2 tl1 tl0 tl7:0 lower timer bits. this byte is the lower byte of the timer register containing the eight least significant bits of the 16-bit register. reads from this register return the same value which was written. the current timer value con- tained in the counters cannot be read. this registers initial state after reset is 0000 0000.
ad1845 C25C rev. c upper timer bits register (ixa3:0 = 21) ixa3:0 data 7 data 6 data 5 data 4 data 3 data 2 data 1 data 0 21 tu7 tu6 tu5 tu4 tu3 tu2 tu1 tu0 tu7:0 upper timer bits. this byte is the upper byte of the timer register containing the eight most significant bits of the 16-bit register. reads from this register return the same value which was written. the current timer value con- tained in the counters cannot be read. the timer counter is determined by the clock source selected (see below). input frequency divider timer counter 24.576 mhz 247 10.050 m s 14.31818 mhz 144 10.057 m s 24.000 mhz 242 10.083 m s 25.000 mhz 252 10.080 m s 33.000 mhz 333 10.091 m s this registers initial state after reset is 0000 0000. upper frequency select bits register (ixa3:0 = 22) ixa3:0 data 7 data 6 data 5 data 4 data 3 data 2 data 1 data 0 22 fu7 fu6 fu5 fu4 fu3 fu2 fu1 fu0 fu7:0 upper frequency select bits. this register is accessible when fren is 1. writing to this register allows the user to program the sampling frequency from 4 khz to 50 khz in 1 hz increments. writing to the lower and upper frequency select register allows the ad1845 to process audio data using approximately 50,000 different audio sample rates. one lsb represents exactly one hertz. selecting frequencies below 4 khz or above 50 khz will result in degraded audio performance. some common sample rates are listed below: quality sampling frequency fu7:0 (hex) fl7:0 (hex) voice 8.0 khz 0001 1111 0100 0000 default radio 11.025 khz 0010 1011 0001 0001 tape 22.05 khz 0101 0110 0010 0010 cd 44.1 khz 1010 1100 0100 0100 dat 48.0 khz 1011 1011 1000 0000 this registers initial state after reset is 0001 1111. lower frequency select bits register (ixa3:0 = 23) ixa3:0 data 7 data 6 data 5 data 4 data 3 data 2 data 1 data 0 23 fl7 fl6 fl5 fl4 fl3 fl2 fl1 fl0 fl7:0 lower frequency select bits. writing to the lower frequency select register updates the entire 16-bit frequency register. this registers initial state after reset is 0100 0000. capture playback timer register (ixa3:0 = 24) ixa3:0 data 7 data 6 data 5 data 4 data 3 data 2 data 1 data 0 24 res ti ci pi cu co po pu pu playback underrun. this bit is set when the dac runs out of data and a sample has been missed. po playback overrun. this bit is set when the host tries to write data into the fifo and the write was ignored be- cause the fifo was full. co capture overrun. this bit is set when the adc has a sample to load into the fifo, and the data was ignored because the capture fifo was full. cu capture underrun. this bit is set when the host attempts to read from the capture fifo when it is empty. under these circumstances, the last valid byte is sent to the host. pi playback interrupt. this bit indicates that there is an interrupt pending from the playback dma count registers. ci capture interrupt. this bit indicates that there is an interrupt pending from the capture dma count registers.
ad1845 C26C rev. c ti timer interrupt. this bit indicates that there is an interrupt pending from the timer count registers. res reserved for future expansion. always write zero to this bit. playback, capture and timer interrupts may be cleared simultaneously by writing to the status register. these interrupts may be cleared individually by writing a 0 to the corresponding bit. note that the timer interrupt requires a minimum wait period of 10 m s after the interrupt is set and before ti is recognized. use te to clear the timer interrupt immediately. this registers initial state after reset is 100x x000. revision id register (ixa3:0 = 25) ixa3:0 data 7 data 6 data 5 data 4 data 3 data 2 data 1 data 0 25 v2 v1 v0 res res cid2 cid1 cid0 v2:0 version number. indicates the version of the ad1845. res reserved for future expansion. always write zeros to these bits. cid2:0 chip id number. this registers initial state after reset is x000 0000. mono control registers (ixa3:0 = 26) ixa3:0 data 7 data 6 data 5 data 4 data 3 data 2 data 1 data 0 26 mim mom res res mia3 mia2 mia1 mia0 mia3:0 mono input attenuation. the least significant bit represents 3.0 db attenuation. see figure 11 to determine the attenuation. res reserved for future expansion. always write zeros to these bits. mom mono output mute. m_out is muted by setting mom to 1. 0 mono output not muted 1 mono output muted mim mono input mute. m_in is muted by setting mim to 1. 0 mono input not muted 1 mono input muted this registers initial state after reset is 00xx 0011. mia3 mia2 mia1 mia0 mono attenuation 0 0 0 0 0.0 db 0 0 0 1 C3.0 db 0 0 1 0 C6.0 db 0 0 1 1 C9.0 db 0 1 0 0 C12.0 db 0 1 0 1 C15.0 db 0 1 1 0 C18.0 db 0 1 1 1 C21.0 db 1 0 0 0 C24.0 db 1 0 0 1 C27.0 db 1 0 1 0 C30.0 db 1 0 1 1 C33.0 db 1 1 0 0 C36.0 db 1 1 0 1 C39.0 db 1 1 1 0 C42.0 db 1 1 1 1 C45.0 db figure 11. mono attenuation
ad1845 C27C rev. c power-down control register (ixa3:0 = 27) ixa3:0 data 7 data 6 data 5 data 4 data 3 data 2 data 1 data 0 27 adcpwd dacpwd mixpwd res fren res res res res reserved for future expansion. always write zeros to these bits. fren frequency select register enable. in mode2, selecting this bit will turn on the frequency select registers (see indirect registers 22 and 23) and disable cfs2:0. 0 cfs active. 1 frequency select registers active, cfs disabled. mixpwd mixer power down. the dac and the output mixer are powered down, and the dac sample clock is turned off. dacpwd dac power down. the dac is powered down and the dac sample clock is turned off. adcpwd adc power down. the adc is powered down and the adc sample clock is turned off. this registers initial state after reset is 000x 0xxx. capture data format control register (ixa3:0 = 28) ixa3:0 data 7 data 6 data 5 data 4 data 3 data 2 data 1 data 0 28 cfmt1 cfmt0 cc/l cs/m res res res res note: changing cfmt[1:0], cc/l, cs/m, requires the mode change enable (mce) state or setting cen = 0. res reserved for future expansion. always write zeros to these bits. cs/m capture stereo/mono select. setting this bit determines how the captured audio data will be formatted. in the mono mode, valid information is captured on the left channel, and the right channel data is not valid. 0 mono format 1 stereo format cc/l capture companding/linear select. this bit is set to determine linear, m -law or a-law companding. see figure 12 for cfmt[1:0] and cc/l bit settings that determine the audio data type capture format. cfmt[1:0] capture data format. this bit is set to format the data being captured in mode 2. see figure 12 for cfmt and cc/l bit settings that determine the capture audio data type format. this registers initial state after reset is 0000 xxxx. cfmt1 cfmt0 cc/l audio data type 0 0 0 linear, 8-bit unsigned pcm 001 m -law, 8-bit companded 0 1 0 linear, 16-bit twos complement pcm little endian 0 1 1 a-law, 8-bit companded 1 0 0 reserved 1 0 1 reserved 1 1 0 linear, 16-bit twos-complement big endian 1 1 1 reserved figure 12. capture audio data type crystal, clock select/total power-down register (ixa3:0 = 29) ixa3:0 data 7 data 6 data 5 data 4 data 3 data 2 data 1 data 0 29 xfs2 xfs1 xfs0 res res res res totpwd totpwd total power down. when totpwd = hi, the adc, dac, mixer, and voltage reference are powered down, and the adc and dac sample clocks are turned off. only the digital interface remains active to allow the host to exit the ad1845 from the total power-down state. res reserved for future expansion. always write zeros to these bits.
ad1845 C28C rev. c xfs2:0 crystal/clock input frequency select. on power up or reset, the ad1845 expects a 24.576 mhz input clock. if the clock source connected to the ad1845 is different from the default condition, then the clock input must be selected using this register. for a detailed explanation see the power up and reset section of the data sheet. figure 13 summarizes the valid input clock frequencies. clock sources with excessive jitter may not yield optimal analog performance. this registers initial state after reset is 000x xxx0. xfs2 xfs1 xfs0 input frequency 0 0 0 24.576 mhz 0 0 1 14.31818 mhz 0 1 0 24.000 mhz 0 1 1 25.000 mhz 1 0 0 33.000 mhz 1 0 1 reserved 1 1 0 reserved 1 1 1 reserved figure 13. input frequency selection capture upper base count register (ixa3:0 = 30) ixa3:0 data 7 data 6 data 5 data 4 data 3 data 2 data 1 data 0 30 cub7 cub6 cub5 cub4 cub3 cub2 cub1 cub0 cub7:0 capture upper base count. this byte is the upper byte of the base count register containing the eight most sig- nificant bits of the second 16-bit base register. reads from this register return the same value that was written. the current count contained in the counters cannot be read. this registers initial state after reset is 0000 0000. capture lower base count register (ixa3:0 = 31) ixa3:0 data 7 data 6 data 5 data 4 data 3 data 2 data 1 data 0 31 clb7 clb6 clb5 clb4 clb3 clb2 clb1 clb0 clb7:0 capture lower base count. this byte is the lower byte of the base count register containing the eight least signifi- cant bits of the second 16-bit base register. reads from this register return the same value that was written. the current count contained in the counters cannot be read. this registers initial state after reset is 0000 0000.
ad1845 C29C rev. c data and control transfers the ad1845 soundport stereo codec supports a dma re- quest/grant architecture for transferring data with the host com- puter bus. one or two dma channels can be supported. programmed i/o (pio) mode is also supported for control register accesses and for applications lacking dma control. pio transfers can be made on one channel while the other is performing dma. transfers to and from the ad1845 soundport codec are asynchronous relative to the internal data conversion clock. transfers are buffered by fifos located in the capture and playback paths. data ordering the number of byte-wide transfers required depends on the data format selected. the ad1845 is designed for little and big endian formats. in little endian format, the least significant byte (i.e., occupying the lowest memory address) gets trans- ferred first. therefore, 16-bit data transfers require first trans- ferring the least significant bits [7:0] and then transferring the most significant bits [15:8], where bit 15 is the most significant bit in the word. in big endian format, byte ordering for the most significant (ms) byte and least significant (ls) byte are swapped. in addition, left channel data is always transferred before right channel data with the ad1845. the following figures should make these requirements clear. sample 6 sample 5 sample 4 sample 3 sample 2 sample 1 byte 4 byte 3 byte 2 byte 1 time mono mono mono mono figure 14. 8-bit mono data stream sequencing byte 4 byte 3 byte 2 byte 1 time sample 3 sample 3 sample 2 sample 2 sample 1 sample 1 right left right left figure 15. 8-bit stereo data stream sequencing bytes 3 and 4 bytes 1 and 2 sample 6 sample 5 sample 4 sample 3 sample 2 sample 1 time ls ms ls ms figure 16. 16-bit mono data stream sequencing, little endian bytes 3 and 4 bytes 1 and 2 time sample 3 sample 3 sample 2 sample 2 sample 1 sample 1 right ms right ls left ms left ls figure 17. 16-bit stereo data stream sequencing, little endian bytes 3 and 4 bytes 1 and 2 time sample 6 sample 5 sample 4 sample 4 sample 3 sample 2 sample 1 ls ms ls ms figure 18. 16-bit mono data stream sequencing, big endian bytes 3 and 4 bytes 1 and 2 time sample 3 sample 3 sample 2 sample 2 sample 1 sample 1 right ls right ms left ls left ms figure 19. 16-bit stereo data stream sequencing, big endian fifo the ad1845 includes two 16-sample deep fifos. the fifos are built into the capture and playback paths and are completely transparent to the user and require no programming. the fifos are active in mode1 and mode2. the ad1845 maintains a continuous playback stream by re- questing data from the host until the fifo located in the play- back path is full. as the fifo empties, new samples are requested to keep the playback fifo full. in the event that the fifo runs out of data and dacz is reset to 0, the last valid sample will be continuously played back. if dacz is 1, the ad1845 will output a midscale value. the fifo located in the capture data path attempts to stay empty by making requests of the host every sample period that it contains valid data. when the host system cannot respond during the same sample period, the capture fifo starts filling, and avoids a loss of data in the audio data stream. data bus drivers the ad1845 has built-in 8 or 16 ma bus drivers for interfacing to the isa bus. the drivers reduce the need for the off-chip 74_245 bus transceiver buffers in many applications. if higher drive capability is required, 24 ma for example, the ad1845 generates the appropriate direction and enable signals. see figure 1 and refer to the applications circuits section of the data sheet. control and programmed i/o (pio) transfers this simpler mode of transfers is used both for control register accesses and programmed i/o. the 37 control and pio data registers cannot be accessed via dma transfers. playback pio
ad1845 C30C rev. c is activated when both playback enable (pen) is set and play- back pio (ppio) is set. capture pio is activated when both capture enable (cen) is set and capture pio (cpio) is set. see figures 20 and 21 for the detailed timing of the control register/pio transfers. the rd and wr signals are used to define the actual read and write cycles, respectively. the host holds cs lo during these transfers. the dma capture data acknowledge ( cdak ) and playback data acknowledge ( pdak ) must be held inactive, i.e., hi. for read/capture cycles, the ad1845 will place data on the data7:0 lines while the host is asserting the read strobe, rd , by holding it lo. for write/playback, the host must place data on the data7:0 pins while strobing the wr signal lo. the ad1845 latches the write/playback data on the rising edge of the wr strobe. when using pio data transfers, the status register must be polled to determine when data should be transferred. note that the adc capture data will be ready (crdy hi) from the previ- ous sample period shortly before the dac playback data is ready (prdy hi) for the next sample period. the user should not wait for both adcs and dacs to become ready before initiating data transfers. instead, as soon as capture data is ready, it should be read; as soon as the dacs are ready, play- back data should be written. values written to the xctl1:0 bits in the pin control register (ixa3:0 = 10) will be reflected in the state of the xctl1:0 external output pins. this feature allows a simple method for signaling or software control of external logic. changes in state of the external xctl pins will occur within one sample period. because their change is referenced to the internal sample clock, no useful timing diagram can be constructed. direct memory access (dma) transfers the second type of bus cycle supported by the ad1845 are dma transfers. both dual channel and single channel dma operations are supported. to enable playback dma transfers, playback enable (pen) must be set and ppio cleared. to enable capture dma transfers, capture enable (cen) must be set and cpio cleared. during dma transfers, the ad1845 asserts hi the capture data request (cdrq) or the playback data request (pdrq) followed by the hosts asserting lo the dma capture data acknowledge ( cdak ) or playback data acknowledge ( pdak ), respectively. the hosts asserted cdrq/pdrq outputs t adsu t adhd t dhd1 t rddv t stw t dbdl t cssu t cshd t sudk1 t sudk2 cdak input cs input dben & dbdir outputs rd input data7:0 outputs data1:0 inputs figure 20. control register/pio read cycle cdrq/pdrq outputs t adsu t adhd t dhd2 t dbdl t cssu t cshd pdak input cs input dben output wr input data7:0 inputs data1:0 inputs t wdsu dbdir output hi t sudk2 t stw t sudk1 figure 21. control register/pio write cycle acknowledge signals cause the ad1845 to perform dma trans- fers. the input address lines, adr1:0, are ignored. data is transferred between the proper internal sample registers. the read strobe ( rd ) and write strobe ( wr ) delimit valid data for dma transfers. chip select ( cs ) is a dont care; its state is ignored by the ad1845. the ad1845 may assert the data request signals, cdrq and pdrq, at any time. once asserted, these signals will remain active hi until the corresponding dma cycle occurs with the hosts data acknowledge signals. the data request signals will be deasserted after the falling edge of the fina l rd or wr strobe in the transfer of a sample, which typically consists of multiple bytes. see data ordering above for a definition of sample. dma transfers may be independently aborted by resetting the capture enable (cen) and/or playback enable (pen) bits in the interface configuration register. the current capture sample transfer will be completed if a capture dma is termi- nated. the current playback sample transfer must be completed if a playback dma is terminated. if cdrq and/or pdrq are asserted hi while the host is resetting cen and/or pen, the request must be acknowledged. the host must assert cdak and/or pdak lo and complete a final sample transfer. single-channel dma single-channel dma mode allows the ad1845 to be used in systems with only a single dma channel. it is enabled by set- ting the sdc bit in the interface configuration register. all captures and playbacks take place on the playback channel. obviously, the ad1845 cannot perform a simultaneous capture and playback in single-channel dma mode. playback will occur in single-channel dma mode exactly as it does in two-channel mode. capture, however, is diverted to the playback channel which means that the capture data request occurs on the pdrq pin and the capture data acknowledge must be received on the pdak pin. the cdrq pin will re- main inactive lo. any inputs to cdak will be ignored. playback and capture are distinguished in single-channel dma mode by the state of the playback enable (pen) or capture enable (cen) control bits. if both pen and cen are set in single-channel dma mode, playback will be presumed. to avoid confusion of the origin of a request when switching between playback and capture in single-channel dma mode, both cen and pen should be disabled and all pending re- quests serviced before enabling the alternative enable bit.
ad1845 C31C rev. c switching between playback and capture in single-channel dma mode does not require changing the ppio and cpio bits or passing through the mode change enable state except for initial setup. for setup, assign zeros to both ppio and cpio. this configures both playback and capture for dma. following setup, switching between playback and capture can be effected entirely by setting and clearing the pen and cen control bits, a technique which avoids having to enter mode change enable. dual-channel dma the ad1845 is designed to support full duplex dma operation by allowing simultaneous capture and playback. the dual- channel dma feature enables playback and capture dma requests and acknowledges to occur on separate dma channels. capture and playback are enabled and set for dma transfers. in addition, dual-channel dma must be set (sdc = 0). it is not necessary to enter mce (mode change enable) to change pen and cen (playback and capture enable). dma timing below, timing parameters are shown for 8-bit mono sample read/capture and write/playback dma transfers in figures 22 and 23. the same timing parameters apply to multi-byte trans- fers. the relationship between timing signals is shown in fig- ures 24 and 25. the host interrupt pin (int) will go hi after a sample transfer in which the current count register underflows. isa bus bclk t dhd1 t dbdl t dksu t dkhdb cdrq output cdak input dben & dbdir outputs rd input data7:0 outputs t rddv t drhd t stw figure 22. 8-bit mono dma read/capture cycle isa bus bclk t dhd2 t stw t dsdl t dksu t dkhda pdrq output pdak input dben output wr input data7:0 outputs hi dbdir output t drhd t wdsu figure 23. 8-bit mono dma write/playback cycle isa bus bclk cdrq /pdrq outputs cdak / pdak inputs rd or wr inputs data7:0 t bwdn left/ low byte right/ high byte figure 24. 8-bit stereo or 16-bit mono dma cycle isa bus bclk cdrq /pdrq outputs cdak / pdak inputs rd or wr inputs data7:0 t bwdn low byte high byte low byte high byte left sample right sample figure 25. 16-bit stereo dma interrupt dma interrupt writing to the internal 16-bit base count register sets up the count value for the number of samples to be transferred. note that the number of bytes transferred for a given count will be a function of the selected global data format. the internal cur- rent count register is updated with the current contents of the upper and lower base count registers when a write occurs to the upper base count register. the current count register cannot be read by the host. read- ing the base count registers will only read back the initializa- tion values written to them. the current count register decrements by one after every sample transferred. an interrupt event is generated after the current count register is zero and an additional playback sample is transferred. the int bit in the status register always reflects the current internal interrupt state defined above. the external int pin will only go active hi if the interrupt enable (wien) bit in the interface configuration register is set. if the ien bit is zero, the external int pin will always stay lo, even though the status registers int bit may be set.
ad1845 C32C rev. c hardware controlled states the hardware power-down states are accessed by bringing the pwrdwn or reset pin lo. either of these signals place the ad1845 into the maximum power conservation mode. bringing the pwrdwn or reset pin hi will power-up the codec in approximately 512 ms (see the power-up and reset section of this data sheet). ? power-down: pwrdwn immediately puts the ad1845 into its lowest power-down state. the ad1845s parallel inter- face will not function and all bidirectional signal lines will be in a high-impedance state. ? reset : reset powers down the ad1845 gradually to its lowest power-down state. the ad1845 performs a se- quenced power-down that eliminates audible effects from the dacs output. the xtal1 input must be clocked for the minimum duration of the reset pulsewidth. the ad1845s parallel interface will not function and all bidirec- tional signal lines will be in a high-impedance state. note: the clock must operate during the software or hardware power-down process. software controlled states to enter the total power-down mode requires entering the mode change enable (mce) state. after entering mce, the total power-down mode can be accessed by writing a 1 to the totpwd bit in the total power-down register. exiting the total power-down mode (writing a 0 to the totpwd bit in the total power-down register) will initialize the ad1845 in approximately 512 ms (see the power-up and reset section of this data sheet). ? total power-down : in the total power-down mode the adc, dac, mixer, and voltage reference are turned off, but the digital interface remains active awaiting power-up. all adc and dac data is flushed including data in the capture and playback fifos. to enter the software controlled power-down states in the power-down control register, write a 1 to the control bits. advanced power-down pwrdwn reset totpwd adcpwd dacpwd mixpwd power-down power-up power mode pin pin bit bit bit bit delay* delay* dissipation operating hi hi 0 0 0 0 x x 600 mw 1. power-down lo x x x x x 0 s 512 ms 10 mw 2. reset hi lo x x x x 3 ms 512 ms 10 mw 3. total power-down hi hi 1 x x x 3 ms 512 ms 150 mw 4. standby hi hi 0 1 x 1 1/f s 1/f s 180 mw 5. mixer power-down hi hi 0 0 x 1 1/f s 1/f s 350 mw 6. mixer only hi hi 0 1 1 0 1/f s 1/f s 260 mw 7. adc power-down hi hi 0 1 0 0 1/f s 1/f s 400 mw 8. dac power-down hi hi 0 0 1 0 1/f s 1/f s 425 mw x = dont care *values shown are derived using a 24.576 mhz input clock source. all values are proportional to the input clock source. figure 26. advanced power-down mode summary power-up and reset the pwrdwn and reset pin should be held in the active lo state when power is first applied to the ad1845. the ad1845s initialization commences when pwrdwn and reset have both been deasserted (hi). while initializing, the ad1845 ignores all writes and all reads will yield 1000 0000 (80h). at the conclu- sion of initialization, all registers will be set to their default values as listed in figure 5. when cdak and pdak are inactive during powe r-up or reset, the conclusion of the initialization period, after approximately 512 ms, can be detected by polling the index register for some value other than 1000 0000 (80h). upon power-up the ad1845 enters the mode change enable (mce) state. in the default condition, the ad1845 expects to receive a 24.576 mhz input clock source. to change the selec- tion of the current or default input clock source, follow the steps listed below: ? wait for the ad1845 to initialize. ? set the mode2 bit to 1. ? enter the mce state, write to the crystal/clock input fre- quency select bits (xfs2:0) to select the desired frequency. ? the ad1845 will now resynchronize its internal states to the new clock. writes to the ad1845 will be ignored. poll the index register for some value other than 1000 0000 (80h). ? clear the mce bit. advanced power-down modes the ad1845 has eight advanced power-down modes available at any time. the user can control these power-down modes through hardware by asserting the pwrdwn and reset pins or through software by writing to the power-down and the total power-down control registers. figure 26 summarizes the power-down delay, power-up delay, and power dissipation for each power-down mode. a priority listing and description of the power-down modes follows. note that the hardware con- trolled power-down and reset modes take precedence over the software controlled power-down states.
ad1845 C33C rev. c the ad1845 performs a sequenced power-down that eliminates audible effects from the dacs output, and saves the codecs internal operating state. clearing the bits (writing a 0 to the control bits) returns the ad1845 from the power-down state and begins the initialization sequence. the ad1845 exits the power-down mode within 1 sample period. however, an additional 128 sample periods are required to unmute the out- puts and restore the internal settings to the pre-power-down operating state. ? standby : entering the standby mode places the adc, dac and the mixer into a low power state, and forces all outputs to be muted. standby turns off all internal digital and analog circuitry with the exception of the digital interface and the voltage reference. all adc and dac data is flushed includ- ing data in the capture and playback fifos. ? mixer power-down : entering the mixer power-down mode, causes both the mixer and the dac circuitry to be turned off. all dac data is flushed including data in the playback fifo. in this mode the mixer is off and the ad1845 is muted, but the adc remains functional. ? mixer only : the mixer only mode is initiated by powering down both the adc and dac, leaving the analog mixer and the digital interface active. mic, line, aux1, aux2, and m_in can be mixed in the analog domain on the ad1845 outputs. all adc and dac data is flushed including data in the capture and playback fifos. ? adc power-down : entering the adc power-down mode, causes the adc digital and analog engines to be turned off. all adc data is flushed including data in the capture fifo and the ad1845 is rendered deaf. the input programmable gain amplifier (pga) is also shut down. the dac and mixer remain active allowing the ad1845 to continue to playback and mix samples. ? dac power-down : entering the dac power-down mode suspends the dac digital and analog engines, and all dac data is flushed including data in the playback fifo. how- ever, the mixer and adc are functional allowing the ad1845 to continue to capture and mix samples. autocalibration the ad1845 calibrates the adcs and dacs for greater accu- racy by minimizing dc offsets. upon power-up or after reset , the ad1845 automatically performs an autocalibration after the first return from the mode change enable state, regardless of the state of the acal bit. autocalibration can be forced when the ad1845 returns from the mode change enable state and the acal bit in the interface configuration register has been set. if the acal bit is not set, the ram normally containing adc and dac offset compensations will be saved, retaining the offsets of the most recent autocalibration. the completion of autocalibration can be determined by polling the autocalibrate-in-progress (aci) bit in the test and initial- ization register, which will be set during autocalibration. trans- fers enabled during autocalibration do not begin until the completion of autocalibration. the following summarizes the procedure for autocalibration: ? set the mode change enable (mce) bit. ? set the autocalibration (acal) bit. ? clear the mode change enable (mce) bit. ? the autocalibrate-in-progress (aci) bit will remain hi for 384 sample periods. poll the aci bit until it transitions from hi to lo. ? set desired gain/attenuation/mute and digital mix values. during the autocalibration sequence, data output from the adcs is meaningless. inputs to the dacs are ignored. even if the user specified the muting of all analog outputs, near the end of the autocalibration sequence, dc analog outputs very close to v ref will be produced at the line output. changing sample rates in mode1 the ad1845 can change sample rates by entering the mode change enable state or writing directly to the clock and data format register. in mode2, the ad1845 changes sample rates by writing directly to the upper and lower fre- quency select register. please refer to the following examples for changing the sample rate. to change the selection of the current sample rate by entering the mode change enable state requires the sequence which is summarized as follows (this is the same sequence used by the ad1848, ad1846, cs4248, and cs4231): ? set the mode change enable (mce) bit. ? in a single write cycle, change the clock frequency divide select (cfs2:0) and/or the clock source select (css). ? the ad1845 now needs to resynchronize its internal states to the new clock. writes to the ad1845 will be ignored. reads will produce 1000 0000 (80h) until the resynchronization is complete. poll the index register until something other than this value is returned. ? clear the mode change enable (mce) bit. ? if acal is set, follow the procedure described in autocalibration above. ? wait 128 sample cycles or poll the aci bit until it transitions lo. ? set to desired gain/attenuation values, and unmute dac outputs (if muted). alternatively, the ad1845 can be programmed to change the sample rate selection on the fly without entering the mode change enable sequence. the following sequence applies to the ad1845 operating in mode1 or mode2. ? in a single write cycle, change the clock frequency divide select (cfs2:0) and/or the clock source select (css). for compatibility reasons, the ad1845 will send out 1000 0000 (80h) for approximately 200 m s. even this short wait can be disabled by setting the initd bit. when the initd bit is set, the ad1845 is ready immediately after changing the sample rate using cfs and css. ? the ad1845 now needs to resynchronize its internal states to the new clock. writes to the ad1845 will be ignored. reads will produce 1000 0000 (80h) until the resynchronization is complete. poll the index register until something other than this value is returned. ? set to desired gain/attenuation values, and unmute dac outputs (if muted).
ad1845 C34C rev. c 4.3k v 1 m f 3.3k v 560pf npo l_line r_line 4.3k v 1 m f 3.3k v 560pf npo figure 27. 2 v rms line- level input circuit for line in puts 4.3k v 1 m f 3.3k v 1000pf npo 4.3k v 1 m f l_aux1 l_aux2 m_in 1000pf npo r_aux1 r_aux2 3.3k v figure 28. 2 v rms line-level input circuit for m_in and aux inputs the ad1845 codec contains an optional +20 db gain block to accommodate condenser microphones. particular system re- quirements will depend upon the characteristics of the intended microphone. figure 29 illustrates one example of how an elec- tret condenser mike requiring phantom power could be con- nected to the ad1845. v ref is shown buffered by an op amp; a transistor like a 2n4124 will also work fine for this purpose. note that if a battery-powered microphone is used, the buffer and r2s are not needed. the values of r1, r2, and c should be chosen in light of the mic characteristics and intended gain. typical values for these might be r1 = 20 k w , r2 = 2 k w , and c = 220 pf. l_mic v ref 5k v 1 m f 5k v 1 m f c 1/2 ssm2135 or ad820 r1 r2 1/2 ssm2135 or ad820 r_mic left electret condenser microphone input right electret condenser microphone input c r2 r1 0.33 m f 1/2 ssm2135 or ad820 0.33 m f v ref figure 29. phantom-powered microphone input circuit in the expanded mode, mode2, the ad1845 can be pro- grammed to change the sample rate selection in 1 hz incre- ments on the fly and without entering the mode change enable sequence. the following sequence applies to the ad1845 in mode2 only: ? enable the frequency select register by setting fren to 1. ? change the lower and upper frequency select register, fu7:0 and fl7:0. applications circuits the ad1845 stereo codec has been designed to require a minimum of external circuitry. the recommended circuits are shown in figures 27 through 35. see figure 1 for an illustration of the connection between the ad1845 soundport codec and the industry standard archi- tecture (isa) computer bus, also known as the pc-at bus. note that the 74_245 transceiver receives its enable and direc- tion signals directly from the codec. analog devices recom- mends using the slowest 74_245 adequately fast to meet all ad1845 and computer bus timing and drive requirements. so doing will minimize switching transients of the 74_245. this in turn will minimize the digital feed through effects of the trans- ceiver when driving the ad1845, which can cause the audio noise floor to rise. in most applications, the 74_245 can be omitted and the ad1845 connected directly isa bus taking advantage of the ad1845s built-in 16 ma drivers. industry-standard compact disc line-levels are 2 v rms cen- tered around analog ground. (for other audio equipment, line level is much more loosely defined.) the ad1845 soundport is a +5 v only powered device. line level voltage swings for the ad1845 are defined to be 1 v rms for a sine wave adc input and user selectable 0.707 v rms or 1 v rms for a sine wave dac output. thus, 2 v rms input analog signals must be attenuated and either centered around the reference voltage intermediate between 0 v and +5 v or ac coupled. the v ref pin will be at this intermediate voltage, nominally 2.25 v. it has limited drive but can be used as a voltage datum to an op amp input. note, however, that dc-coupled inputs are not recom- mended, as they provide no performance benefits with the ad1845 architecture. furthermore, dc offset differences be- tween multiple dc-coupled inputs create the potential for clicks when changing the input mixer selection. a circuit for 2 v rms mono, line-level inputs and auxiliaries is shown in figure 27 and figure 28. note that this is a divide- by-two resistive dividers considering the codec input imped- ance. the input resistor and 560 pf (1000 pf) capacitor provides the single-pole of antialias filtering required for the adcs. if line-level inputs are already at the 1 v rms levels expected by the ad1845, the resistors in parallel with the 560 pf (1000 pf) capacitors can be omitted. if the application does not route the aux2 inputs to the adcs, then no antialias filtering is required (only the 1 m f ac coupling capacitor).
ad1845 C35C rev. c 20C64pf xtal1i 24.576 mhz xtal1o 20C64pf figure 34. crystal connections note: xtal2i and xtal2o, are not used in the ad1845. analog devices also recommends a pull-down resistor for pwrdwn . good, standard engineering practices should be applied for power-supply decoupling. decoupling capacitors should be placed as close as possible to package pins. if a separate analog power supply is not available, we recommend the circuit shown in figure 35 for using a single +5 v supply. ferrite beads suffice for the inductors shown (typically 600 w at 100 mhz). this circuitry should be as close to the supply pins as is practical. 0.1 m f10 m f 0.1 m f 10 m f 0.1 m f v dd v dd v dd fb C + C + 10 m f C + 0.1 m f v cc 0.1 m f v cc 0.1 m f 0.1 m f fb +5v supply figure 35. recommended power supply bypassing grounding and layout analog devices recommends a split ground plane as shown in figure 36. the analog plane and the digital plane are connected directly under the ad1845. splitting the ground plane directly under the soundport codec is optimal because analog pins will be located above the analog ground plane and digital pins will be located directly above the digital ground plane for the best isolation. other schemes may also yield satisfactory results. if the split ground plane recommended here is not possible, the ad1845 should be entirely over the analog ground plane with the op- tional 74_245 transceiver over the digital plane. some manufacturers of compatible devices differentiate between digital supply pins used to power internal logic and digital sup- ply pins used to power the isa bus driver. their recommended layout suggests connecting the internal logic supply pins to the analog supply. a potential problem can occur if the layout con- nects digital supply pins to the analog supply. connecting some of the digital supply pins to one supply and some of the digital supply pins to a different supply can create an internal short between the two different +5 v supplies. figure 30 shows ac-coupled line outputs. the resistors are used to center the output signals around analog ground. if dc-cou- pling is desired, v ref could be used with op amps as mentioned above, if desired. 47k v l_out 1 m f r_out 1 m f 47k v figure 30. line output connections a circuit for headphone drive is illustrated in figure 31. drive is supplied by +5 v operational amps. the circuit shown ac couples the headphones to the line output. headphone left ssm-2135 10k v 470 m f 8.66k v 8.66k v 10k v headphone right 470 m f l_out v_ref r_out figure 31. headphone drive connections figure 32 illustrates reference bypassing. v ref_f should only be connected to its bypass capacitors. v ref_f 1.0f 10f 10f v ref figure 32. voltage reference bypassing figure 33 illustrates signal-path filtering capacitors, l_filt and r_filt. the ad1845 must use 1.0 m f capacitors; the ad1845 will not perform properly with 1000 pf capacitors. the 1.0 m f capacitors required by the ad1845 can be of any type. 1.0f l_filt 1.0f r_filt figure 33. external filter capacitor connections the crystal shown in the crystal connection circuitry of fig- ure 34 should be 24.576 mhz, fundamental-mode and parallel- tuned. note that using the exact data sheet frequencies is not required and that external clock sources can be used to over- drive the ad1845s internal oscillators. (see the description of the cf s2:0 control bits above.) if using an external clock source, apply it to the crystal input pins while leaving the crystal output pins unconnected. attention should be paid to providing low jitter external input clocks.
ad1845 C36C rev. c analog devices recommends that all digital pins be driven from the same supply. a common technique to achieve maximum performance is to use a +5 v regulator to power the analog side of the codec from the pcs +12 v supply line, while the standard pc +5 v supply line powers the entire digital side of the codec. the separate supplies provide noise isolation for the analog side of the codec, and maximize performance of the ad1845. analog ground plane digital ground plane ad1845 plcc gndd 44 25 gndd r_aux2 43 26 r_filt analog ground plane digital ground plane ad1845 tqfp nc 52 24 nc nc 51 25 r_filt figure 36. recommended ground plane compatibility with cs4231 1. the cs4231 requires a 1000 pf npo type capacitor on pins 26 and 31. the ad1845 requires a 1 m f capacitor on filter pins 26 and 31. to achieve compatibility with the ad1845, use pad spacing that will accommodate either 1000 pf npo capacitors for the cs4231 and the cs4248 or the 1 m f capacitors for the ad1845. 2. the ad1845 requires the input antialiasing filters for the adcs (refer to figures 27 and 28). the cs4231 can use the same filters with no degradation in performance. for compatibility it is suggested that the filters be added. 3. the cs4231 does not require the power pins (v dd ) 24, 45, and 54, or the ground pins (gndd) 25, and 44. it is suggested that the appropriate power/ground pin connec- tions be made. this will not affect the performance of the cs4231. 4. the cs4231 does not provide software programmable power-down modes. 5. the cs4231 does not have the ability to mix the mic input with the dac output. 6. the cs4231 does not contain a variable sample fre- quency generator and cannot change sample rates on the fly. the cs4231 and cs4248 require entering mce to change the sample rate. the ad1845 can change the sample rate without entering mce. the ad1845s 50,000 selectable sample rates are not available on the cs4231. the variable sample frequency generator red uces clicks and pops encountered in many game applications. 7. the cs4231 requires two crystal inputs, 24.575 mhz and 16.9344 mhz. the ad1845 requires only one input of 24.576 mhz or can be driven from osc or other exter- nal clocks. 8. the cs4231 does not contain the initd bit. 9. the cs4231 minimum r in = 20 k w . the ad1845 mini- mum input resistance is 10 k w . 10. the ad1845 does not include hardware for compressing and decompressing adpcm data. analog devices offers windows based software applets for using adpcm for- mats with the ad1845.
ad1845 C37C rev. c frequency response plots 10 ?20 1.0 ?0 ?10 0.1 ?00 0.0 ?0 ?0 ?0 ?0 ?0 ?0 0 ?0 ?0 0.8 0.9 0.7 0.6 0.5 0.4 0.3 0.2 db sample frequency ?f s figure 37. analog-to-digital frequency response to f s (full-scale line-level inputs, 0 db) db sample frequency ?f s 10 ?20 0.70 ?0 ?10 ?00 0.40 ?0 ?0 ?0 ?0 ?0 ?0 0 ?0 ?0 0.64 0.68 0.60 0.56 0.52 0.48 0.44 figure 38. analog-to-digital frequency response transition band (full-scale line-level inputs, 0 db) 10 ?20 ?0 ?10 ?00 ?0 ?0 ?0 ?0 ?0 ?0 0 ?0 ?0 1.0 0.1 0.0 0.8 0.9 0.7 0.6 0.5 0.4 0.3 0.2 db sample frequency ?f s figure 39. digital-to-analog frequency response to f s (full-scale inputs, 0 db) db sample frequency ?f s 10 ?20 ?0 ?10 ?00 ?0 ?0 ?0 ?0 ?0 ?0 0 ?0 ?0 0.70 0.40 0.64 0.68 0.60 0.56 0.52 0.48 0.44 figure 40. digital-to-analog frequency response ?ransition band (full-scale inputs, 0 db)
ad1845 C38C rev. c appendix extended temperature specifications test conditions the ad1845 has been tested over the industrial temperature range. the typical values represent the limits that change with temp era- ture. all other limits remain unchanged. temperature C40 c to +85 c dac test conditions digital supply (v dd ) 5.0 v calibrated analog supply (v cc ) 5.0 v 0 db attenuation sample rate (f s ) 48 khz 16-bit linear mode input signal 1008 hz mute off, ol = 0 analog output passband 20 hz to 20 khz v ih 2.0 v adc input conditions v il 0.8 v calibrated v oh 2.4 v 0 db gain v ol 0.4 v C1.0 db relative to full scale line input 16-bit linear mode programmable gain amplifieradc parameter min typ max units step size (all steps tested) (0 db to 22.5 db) 1.75 db pga gain range span 22.83 db auxiliary, line, mono, and microphone input analog gain/amplifiers/attenuators parameter min typ max units step size aux1, aux2, line, mic (all steps tested): (+12 db to C34.5 db, referenced to dac full scale) 1.5 db step size: m_in (all steps tested) (0 db to C45 db) 3.0 db input gain/attenuation range: aux1, aux2, line, mic 46.2 db input gain/attenuation range: m_in 43.5 db analog-to-digital converters parameter min typ max units dynamic range (C60 db input thd+n referenced to full scale, a-weighted) C81 db thd+n (referenced to full scale) C76 db digital-to -analog converters parameter min typ max units dynamic range (C60 db input thd+n referenced to full scale, a-weighted) C82 db thd+n (referenced to full scale) C78 db dac attenuator parameter min typ max units step size (0 db to C22.5 db) C1.5 db analog output parameter min typ max units v ref 2.36 v
ad1845 C39C rev. c control and programmed i/o (pio) transfers . . . . . . . . . . . 29 direct memory access (dma) transfers . . . . . . . 30 single-channel dma . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 30 dual-channel dma . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 31 dma timing . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 31 dma interrupt . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 31 power-up and reset . . . . . . . . . . . . . . . . . . . . . . . . . . . . 32 advanced power-down modes . . . . . . . . . . . . . . . . . 32 autocalibration . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 33 changing sample rates . . . . . . . . . . . . . . . . . . . . . . . . 33 applications circuits . . . . . . . . . . . . . . . . . . . . . . . . . 34 grounding and layout . . . . . . . . . . . . . . . . . . . . . . . . 35 compatibility with cs4231 . . . . . . . . . . . . . . . . . . . . . 36 frequency response plots . . . . . . . . . . . . . . . . . . . . 37 appendixextended temperature specifications . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 38 package outline dimensions . . . . . . . . . . . . . . . . . . 40 figures table of contents 1. interface to isa bus . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9 2. m -law or a-law expansion . . . . . . . . . . . . . . . . . . . . . . . . 11 3. m -law or a-law compression . . . . . . . . . . . . . . . . . . . . . . 11 4. direct register map . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11 5. indirect register map and reset/default states . . . . . . . . . 12 6. register summary . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 13 7. mix gain level setting: dac . . . . . . . . . . . . . . . . . . . . . . . 18 8. mode1 audio sample frequency select . . . . . . . . . . . . . . 19 9. digital audio data type . . . . . . . . . . . . . . . . . . . . . . . . . . . 19 10. mix gain level setting: aux1, aux2, mic, line . . . . . 24 11. mono attenuation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 26 12. capture audio data type . . . . . . . . . . . . . . . . . . . . . . . . . 27 13. input frequency selection . . . . . . . . . . . . . . . . . . . . . . . . . 28 14. 8-bit mono data stream sequencing . . . . . . . . . . . . . . . . . 29 15. 8-bit stereo data stream sequencing . . . . . . . . . . . . . . . . . 29 16. 16-bit mono data stream sequencing, little endian . . . . 29 17. 16-bit stereo data stream sequencing, little endian . . . . 29 18. 16-bit mono data stream sequencing, big endian . . . . . . 29 19. 16-bit stereo data stream sequencing, big endian . . . . . . 29 20. control register/pio read cycle . . . . . . . . . . . . . . . . . . . . 30 21. control register/pio write cycle . . . . . . . . . . . . . . . . . . . 30 22. 8-bit mono dma read/capture cycle . . . . . . . . . . . . . . . 31 23. 8-bit mono dma write/playback cycle . . . . . . . . . . . . . . 31 24. 8-bit stereo or 16-bit mono dma cycle . . . . . . . . . . . . . . 31 25. 16-bit stereo dma interrupt . . . . . . . . . . . . . . . . . . . . . . . 31 26. advanced power-down mode summary . . . . . . . . . . . . . . 32 27. 2 v rms line-level input circuit for line inputs . . . . . . . 34 28. 2 v rms line-level input circuit for m_in and aux inputs . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 34 29. phantom powered microphone input circuit . . . . . . . . . 34 30. line output connections . . . . . . . . . . . . . . . . . . . . . . . . . . 35 31. headphone drive connections . . . . . . . . . . . . . . . . . . . . . . 35 32. voltage reference bypassing . . . . . . . . . . . . . . . . . . . . . . . . 35 33. external filter capacitor connections . . . . . . . . . . . . . . . . 35 34. crystal connections . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 35 35. recommended power supply bypassing . . . . . . . . . . . . . . . 35 36. recommended ground plane . . . . . . . . . . . . . . . . . . . . . . . 36 37. analog-to-digital frequency response to f s (full-scale line-level inputs, 0 db) . . . . . . . . . . . . . . . . . . . . . . . . . . 37 38. anal og-to-digital frequency re sponsetransition band (full-scale line-level inputs, 0 db) . . . . . . . . . . . . . . . . . 37 39. digital-to-analog frequency response to f s (full-scale inputs, 0 db) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 37 40. digital-to-analog frequency responsetransition band (full-scale inputs, 0 db) . . . . . . . . . . . . . . . . . . . . . . . . . . 37 table of contents product overview . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1 expanded mode (mode2) . . . . . . . . . . . . . . . . . . . . . . . . . . . 9 specifications . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2 ordering guide . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5 pin designations . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6 pin function descriptions . . . . . . . . . . . . . . . . . . . . . 7 functional description . . . . . . . . . . . . . . . . . . . . . . . 10 analog inputs . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10 analog mixing . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10 analog-to-digital datapath . . . . . . . . . . . . . . . . . . . . . . . . . . 10 digital-to-analog datapath . . . . . . . . . . . . . . . . . . . . . . . . . . 10 digital mixing . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10 analog outputs . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10 digital data types . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10 timer registers . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11 interrupts . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11 power supplies and voltage reference . . . . . . . . . . . . . . . . . 11 clocks and sample rates . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11 control registers . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11 control register architecture . . . . . . . . . . . . . . . . . . . . . . . . 11 direct control register definitions . . . . . . . . . . . . . . . . . . . . 14 index address register (adr1:0 = 0) . . . . . . . . . . . . . . . . 14 indexed data register (adr1:0 = 1) . . . . . . . . . . . . . . . . . 14 status register (adr1:0 = 2) . . . . . . . . . . . . . . . . . . . . . . 15 pio data registers (adr1:0 = 3) . . . . . . . . . . . . . . . . . . . 16 indirect control register definitions . . . . . . . . . . . . . . . . . . . 16 left input control (ixa3:0 = 0) . . . . . . . . . . . . . . . . . . . . 16 right input control (ixa3:0 = 1) . . . . . . . . . . . . . . . . . . . 16 left aux #1 input control (ixa3:0 = 2) . . . . . . . . . . . . . . 17 right aux #1 input control (ixa3:0 = 3) . . . . . . . . . . . . . 17 left aux #2 input control (ixa3:0 = 4) . . . . . . . . . . . . . . 17 right aux #2 input control (ixa3:0 = 5) . . . . . . . . . . . . . 17 left dac control (ixa3:0 = 6) . . . . . . . . . . . . . . . . . . . . 18 right dac control (ixa3:0 = 7) . . . . . . . . . . . . . . . . . . . 18 clock and data format (ixa3:0 = 8) . . . . . . . . . . . . . . . . 19 interface configuration (ixa3:0 = 9) . . . . . . . . . . . . . . . . . 20 pin control (ixa3:0 = 10) . . . . . . . . . . . . . . . . . . . . . . . . . 20 test and initialization (ixa3:0 = 11) . . . . . . . . . . . . . . . . . 21 miscellaneous control (ixa3:0 = 12) . . . . . . . . . . . . . . . . 21 digital mix/attenuation control (ixa3:0 = 13) . . . . . . . . 22 dma playback base count . . . . . . . . . . . . . . . . . . . . . . . . 22 upper base count (ixa3:0 = 14) . . . . . . . . . . . . . . . . . 22 lower base count (ixa3:0 = 15) . . . . . . . . . . . . . . . . . . 23 alternate feature enable /left mic input control (ixa3:0 =16) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 23 mic mix enable/right mic input control (ixa3:0 = 17) . 23 left line gain, attenuate, mute, mix (ixa3:0 = 18) . . . . 23 right line gain, attenuate, mute, mix (ixa3:0 = 19) . . . 24 lower timer bits (ixa3:0 = 20) . . . . . . . . . . . . . . . . . . . . 24 upper timer bits (ixa3:0 = 21) . . . . . . . . . . . . . . . . . . . . 25 upper frequency select (ixa3:0 = 22) . . . . . . . . . . . . . . . 25 lower frequency select (ixa3:0 = 23) . . . . . . . . . . . . . . . 25 capture playback timer (ixa3:0 = 24) . . . . . . . . . . . . . . . 25 revision id (ixa3:0 = 25) . . . . . . . . . . . . . . . . . . . . . . . . . 26 mono control (ixa3:0 = 26) . . . . . . . . . . . . . . . . . . . . . . . 26 power-down control (ixa3:0 = 27) . . . . . . . . . . . . . . . . . 27 capture data format control (ixa3:0 = 28) . . . . . . . . . . 27 crystal, clock select/total power-down (ixa3:0 = 29) . . 27 capture upper base count (ixa3:0 = 30) . . . . . . . . . . . . 28 capture lower base count (ixa3:0 = 31) . . . . . . . . . . . . 28 data and control transfers . . . . . . . . . . . . . . . . . 29 data ordering . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 29 fifo . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 29 data bus drivers . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 29
ad1845 C40C rev. c printed in u.s.a. c2008aC2C11/97 outline dimensions dimensions shown in inches and (mm). 68-lead plastic leaded chip carrier (p-68a) 9 pin 1 identifier 10 61 60 26 27 44 43 top view (pins down) 0.995 (25.27) 0.885 (22.48) sq 0.954 (24.23) 0.950 (24.13) sq 0.019 (0.48) 0.017 (0.43) 0.050 (1.27) typ 0.925 (23.50) 0.895 (22.73) 0.029 (0.74) 0.027 (0.69) 0.104 (2.64) typ 0.175 (4.45) 0.169 (4.29) 100-lead thin quad flatpack (st-100) seating plane 0.030 (0.75) 0.020 (0.50) 0.057 (1.45) 0.053 (1.35) 12 typ 0.006 (0.15) 0.002 (0.05) 6 4 0 ?7 0.004 (0.102) max lead coplanarity top view (pins down) 1 25 26 51 50 75 100 76 0.011 (0.27) 0.007 (0.17) 0.640 (16.25) 0.620 (15.75) sq 0.553 (14.05) 0.549 (13.95) sq 0.020 (0.50) bsc


▲Up To Search▲   

 
Price & Availability of AD1845JP

All Rights Reserved © IC-ON-LINE 2003 - 2022  

[Add Bookmark] [Contact Us] [Link exchange] [Privacy policy]
Mirror Sites :  [www.datasheet.hk]   [www.maxim4u.com]  [www.ic-on-line.cn] [www.ic-on-line.com] [www.ic-on-line.net] [www.alldatasheet.com.cn] [www.gdcy.com]  [www.gdcy.net]


 . . . . .
  We use cookies to deliver the best possible web experience and assist with our advertising efforts. By continuing to use this site, you consent to the use of cookies. For more information on cookies, please take a look at our Privacy Policy. X